Part Number Hot Search : 
MM3Z5V1 7805D MS9N20E 807PM ELECTRO 16NS100 DC100 TC113
Product Description
Full Text Search
 

To Download AD9954PCBZ1 Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  400 msps, 14-bit, 1.8 v cmos, direct digital synthesizer ad9954 rev. b information furnished by analog devices is believed to be accurate and reliable. however, no responsibility is assumed by analog devices for its use, nor for any infringements of patents or other rights of third parties that may result from its use. specifications subject to change without notice. no license is granted by implication or otherwise under any patent or patent rights of analog devices. trademarks and registered trademarks are the property of their respective owners. one technology way, p.o. box 9106, norwood, ma 02062-9106, u.s.a. tel: 781.329.4700 www.analog.com fax: 781.461.3113 ?2003C2009 analog devices, inc. all rights reserved. features 400 msps internal clock speed integrated 14-bit dac programmable phase/amplitude dithering 32-bit frequency tuning accuracy 14-bit phase tuning accuracy phase noise better than C120 dbc/hz excellent dynamic performance >80 db narrowband sfdr serial i/o control ultrahigh speed analog comparator automatic linear and nonlinear frequency sweeping 4 frequency/phase offset profiles 1.8 v power supply software and hardware controlled power-down 48-lead tqfp integrated 1024 word 32-bit ram support for 5 v input levels on most digital inputs pll-based refclk multiplier internal oscillator, can be driven by a single crystal phase modulation capability multichip synchronization applications agile lo frequency synthesis programmable clock generators fm chirp source for radar and scanning systems automotive radars test and measurement equipment acousto-optic device drivers general description the ad9954 is a direct digital synthesizer (dds) that uses advanced technology, coupled with an internal high speed, high performance dac to form a complete, digitally programmable, high frequency synthesizer capable of generating a frequency- agile analog output sinusoidal waveform at up to 160 mhz. the ad9954 enables fast frequency hopping coupled with fine tuning of both frequency (0.01 hz or better) and phase (0.022 granularity). the ad9954 is programmed via a high speed serial i/o port. the device includes static ram to support flexible frequency sweep capability in several modes, plus a user-defined linear sweep mode of operation. also included is an on-chip high speed comparator for applications requiring a square wave output. an on-chip oscillator and pll circuitry provide users with multiple approaches to generate the devices system clock. the ad9954 is specified to operate over the extended industrial temperature range (see table 2). basic block diagram comparator 400msps dds core 14-bit dac ref clock input circuitry timing and control digita l sine wave user interface ad9954 03374-038 figure 1.
ad9954 rev. b | page 2 of 40 table of contents features .............................................................................................. 1 applications ....................................................................................... 1 general description ......................................................................... 1 basic block diagram ........................................................................ 1 revision history ............................................................................... 2 functional block diagram .............................................................. 3 electrical specifications ................................................................... 4 absolute maximum ratings ............................................................ 7 explanation of test levels ........................................................... 7 esd caution .................................................................................. 7 pin configuration and function descriptions ............................. 8 typical performance characteristics ........................................... 10 theory of operation ...................................................................... 13 component blocks ..................................................................... 13 modes of operation ................................................................... 16 synchronizationregister updates (i/o update) ............ 21 serial port operation ................................................................. 23 serial interface port pin descriptions ..................................... 24 msb/lsb transfers .................................................................... 24 ram i/o via serial port ............................................................ 24 instruction byte .......................................................................... 25 register maps and descriptions ............................................... 25 control register bit descriptions ............................................ 29 other register descriptions ..................................................... 31 layout considerations ............................................................... 32 detailed programming examples ................................................ 33 single-tone mode ...................................................................... 33 linear sweep mode .................................................................... 33 ram mode .................................................................................. 33 suggested application circuits ..................................................... 35 evaluation board schematics ........................................................ 36 outline dimensions ....................................................................... 39 ordering guide .......................................................................... 39 revision history 5/09rev. a to rev. b changes to figure 29 and figure 30 ............................................. 24 changes to table 12 ........................................................................ 26 changes to figure 34 ...................................................................... 35 updated outline dimensions ....................................................... 39 changes to ordering guide .......................................................... 39 1/07rev. 0 to rev. a changes to layout .............................................................. universal changes to features, general description, and figure 1 ............ 1 changes to figure 2 .......................................................................... 3 changes to table 1 ............................................................................ 4 changes to table 4 ............................................................................ 8 changes to figure 5 to figure 10 .................................................. 10 changes to figure 12 ...................................................................... 11 changes to figure 17 to figure 18 captions ............................... 12 deleted figure 19; renumbered sequentially ............................ 12 added table 5; renumbered sequentially .................................. 13 changes to component block section and table 6 ................... 13 changes to figure 20 ...................................................................... 15 changes to modes of operation section and table 8 ................ 16 changes to table 9 .......................................................................... 17 changes to synchronization; register updates (i/o update) section and figure 24 ..................................................................... 21 changes to serial port operation section ................................... 23 changes to serial interface port pin description section, msb/lsb transfers section, and ram i/o via serial port section .............................................................................................. 24 inserted figure 29 and figure 30; renumbered sequentially .. 24 changes to instruction byte section, register maps and descriptions section, and table 12 .............................................. 25 changes to table 13 ....................................................................... 26 changes to table 14 ....................................................................... 28 added single-tone mode section, linear sweep mode section, table 15, and ram mode section ............................................... 33 added, and table 16 ....................................................................... 34 inserted figure 35 ........................................................................... 36 inserted figure 36 ........................................................................... 37 inserted figure 37 ........................................................................... 38 updated outline dimensions ....................................................... 39 changes to ordering guide .......................................................... 39 10/03revision 0: initial version
ad9954 rev. b | page 3 of 40 functional block diagram frequency accumulator static ram 1024 32 cos(x) control registers oscillator/buffer comparator sync enable i/o update dac_r set dds core phase offset phase accumulator z ?1 z ?1 iout iout osk pwrdwnctl comp_out comp_in comp_in refclk refclk crystal out i/o port ps<1:0> ram data <31:18> dds clock ram data delta frequency tuning word frequency tuning word ram data dds clock delta frequency ramp rate clear phase accumulator dac mux system clock system clock sync_in sync_clk reset timing and control logic 4 to 20 clock multiplier 4 ad9954 32 32 32 14 14 14 32 r a m a d d r e s s 10 ram control 3 19 14 0 32 32 m u x m u x m u x 03374-001 figure 2.
ad9954 rev. b | page 4 of 40 electrical specifications unless otherwise noted, avdd, dvdd = 1.8 v 5%, dvdd_i/o = 3.3 v 5%, r set = 3.92 k, external reference clock frequency = 400 mhz. dac output must be referenced to avdd, not agnd. table 1. parameter temp test level min typ max unit ref clock input characteristics frequency range refclk multiplier disabled full vi 1 400 mhz refclk multiplier enabled at 4 full vi 20 100 mhz refclk multiplier enabled at 20 full vi 4 20 mhz crystal oscillator operating frequency full iv 20 30 mhz input capacitance 25c v 3 pf input impedance 25c v 1.5 k duty cycle 25c v 50 % duty cycle with refclk multiplier enabled 25c v 35 65 % refclk input voltage swing full iv 100 1000 mv p-p dac output characteristics full-scale output current 25c 5 10 15 ma gain error 25c i C10 +10 %fs output offset 25c i 0.6 a differential nonlinearity 25c v 1 lsb integral nonlinearity 25c v 2 lsb output capacitance 25c v 5 pf residual phase noise @ 1 khz offset, 40 mhz a out refclk multiplier enabled @ 20 25c v C105 dbc/hz refclk multiplier enabled @ 4 25c v C115 dbc/hz refclk multiplier disabled 25c v C132 dbc/hz voltage compliance range 25c i avdd C 0.5 avdd + 0.5 v wideband sfdr 1 mhz to 10 mhz analog out 25c v 73 dbc 10 mhz to 40 mhz analog out 25c v 67 dbc 40 mhz to 80 mhz analog out 25c v 62 dbc 80 mhz to 120 mhz analog out 25c v 58 dbc 120 mhz to 160 mhz analog out 25c v 52 dbc narrow-band sfdr 40 mhz analog out (1 mhz) 25c v 87 dbc 40 mhz analog out (250 khz) 25c v 89 dbc 40 mhz analog out (50 khz) 25c v 91 dbc 40 mhz analog out (10 khz) 25c v 93 dbc 80 mhz analog out (1 mhz) 25c v 85 dbc 80 mhz analog out (250 khz) 25c v 87 dbc 80 mhz analog out (50 khz) 25c v 89 dbc 80 mhz analog out (10 khz) 25c v 91 dbc 120 mhz analog out (1 mhz) 25c v 83 dbc 120 mhz analog out (250 khz) 25c v 85 dbc 120 mhz analog out (50 khz) 25c v 87 dbc 120 mhz analog out (10 khz) 25c v 89 dbc 160 mhz analog out (1 mhz) 25c v 81 dbc 160 mhz analog out (250 khz) 25c v 83 dbc 160 mhz analog out (50 khz) 25c v 85 dbc 160 mhz analog out (10 khz) 25c v 87 dbc
ad9954 rev. b | page 5 of 40 parameter temp test level min typ max unit comparator input characteristics input capacitance 25c v 3 pf input resistance 25c iv 500 k input current 25c i 12 a hysteresis 25c iv 30 45 mv comparator output characteristics logic 1 voltage, high-z load full vi 1.6 v logic 0 voltage, high-z load full vi 0.4 v propagation delay 25c iv 3 ns output duty-cycle error 25c iv 5 % rise/fall time, 5 pf load 25c iv 1 ns toggle rate, high-z load 25c iv 200 mhz output jitter 1 25c iv 1 ps rms comparator narrow-band sfdr 10 mhz to 160 mhz f out measured over a 1 mhz bw 25c v 80 dbc measured over a 250 khz bw 25c v 85 dbc measured over a 50 khz bw 25c v 90 dbc measured over a 10 hz bw 25c v 95 dbc timing characteristics serial control bus maximum frequency full iv 25 mbps minimum clock pulse width low full iv 7 ns minimum clock pulse width high full iv 7 ns maximum clock rise/fall time full iv 2 ns minimum data setup time dvdd_i/o = 3.3 v full iv 3 ns minimum data setup time dvdd_i/o = 1.8 v full iv 5 ns minimum data hold time full iv 0 ns maximum data valid time full iv 25 ns wake-up time 2 full i v 1 ms minimum reset pulse width high full iv 5 sysclk cycles 3 i/o update, ps0, ps1 to sync_clk setup time, dvdd_i/o = 3.3 v full i 4 ns i/o update, ps0, ps1 to sync_clk setup time, dvdd_i/o = 1.8 v full i 6 ns i/o update, ps0, ps1 to sync_clk hold time full i 0 ns latency i/o update to frequency change prop delay 25c iv 24 sysclk cycles i/o update to phase offset change prop delay 25c iv 24 sysclk cycles i/o update to amplitude change prop delay 25c iv 16 sysclk cycles ps0, ps1 to ram driven frequency change prop delay 25c iv 28 sysclk cycles ps0, ps1 to ram driven phase change prop delay 25c iv 28 sysclk cycles ps0 to linear frequency sweep prop delay 25c iv 28 sysclk cycles
ad9954 rev. b | page 6 of 40 parameter temp test level min typ max unit cmos logic inputs logic 1 voltage @ dvdd_i/o (pin 43) = 1.8 v 25c i 1.25 v logic 0 voltage @ dvdd_i/o (pin 43) = 1.8 v 25c i 0.6 v logic 1 voltage @ dvdd_i/o (pin 43) = 3.3 v 25c i 2.2 v logic 0 voltage @ dvdd_i/o (pin 43) = 3.3 v 25c i 0.8 v logic 1 current 25c v 3 12 a logic 0 current 25c v 12 a input capacitance 25c v 2 pf cmos logic outputs (1 ma load) dvdd_i/o = 1.8 v logic 1 voltage 25c i 1.35 v logic 0 voltage 25c i 0.4 v cmos logic outputs (1 ma load) dvdd_i/o = 3.3 v logic 1 voltage 25c i 2.8 v logic 0 voltage 25c i 0.4 v power consumption (avdd = dvdd = 1.8 v) single-tone mode (comparator off ) 25c i 162 171 mw with ram or linear sweep enabled 25c i 175 190 mw with comparator enabled 25c i 180 190 mw with ram and comparator enabled 25c i 198 220 mw rapid power-down mode 25c i 150 160 mw full-sleep mode 25c i 20 27 mw synchronization function 4 maximum sync clock rate (dvdd_i/o = 1.8 v) 25c vi 62.5 mhz maximum sync clock rate (dvdd_i/o = 3.3 v) 25c vi 100 mhz sync_clk alignment resolution 5 25c v 1 sysclk cycles 1 represents the cycle-to-cycle residual jitter from the comparator alone. 2 wake-up time refers to the recovery from analog power-down modes (see section on power-down modes of operation). the primary l imiting factor is the settling time of the pll multiplier in the reference circuitry. the wake-up time assumes there is no capacitor on dac bp and that the recommended pll lo op filter values are used. 3 sysclk cycle refers to the clock frequency used on-chip to driv e the dds core. this is equal to the frequency of the referenc e source times the value of the pll-based reference clock multiplier. 4 sync_clk = ? sysclk rate. be sure the high speed sy nc enable bit, cfr2<11>, is programmed appropriately. 5 this parameter indicates that the digital synchronization feature canno t compensate for phase dela ys (timing skew) between sys tem clock rising edges. if the system clock edges are aligned, the synchronization function should not increase the skew between the two edges.
ad9954 rev. b | page 7 of 40 absolute maximum ratings table 2. parameter rating maximum junction temperature 150c dvdd_i/o (pin 43) 4 v avdd, dvdd 2 v digital input voltage (dvdd_i/o = 3.3 v) C0.7 v to +5.25 v digital input voltage (dvdd_i/o = 1.8 v) C0.7 v to +2.2 v digital output current 5 ma storage temperature range C65c to +150c operating temperature range C40c to +105c lead temperature (10 sec soldering) 300c ja 38c/w jc 15c/w stresses above those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only; functional operation of the device at these or any other conditions above those indicated in the operational section of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. explanation of test levels i 100% production tested. ii 100% production tested at 25c and sample tested at specified temperatures. iii sample tested only. iv parameter is guaranteed by design and characterization testing. v parameter is a typical value only. vi devices are 100% production tested at 25c and guaranteed by design and characterization testing for industrial operating temperature range. esd caution input dvdd_i/o iout avdd iout avoid overdriving digital inputs. forward biasing esd diodes may couple digital noise onto power pins. digital inputs must terminate outputs to avdd for current flow. do not exceed the output voltage compliance rating. digital outputs comparator output comparator inputs comp in comp in 03374-032 figure 3. equivalent input and output circuits
ad9954 rev. b | page 8 of 40 pin configuration and fu nction descriptions cs 03374-002 31 34 dvdd 33 dgnd 32 agnd 29 avdd 30 comp_in comp_in 35 pwrdwnctl 36 reset 28 comp_out 27 avdd 26 agnd 25 avdd pin 1 ad9954 top view (not to scale) 13 avdd 14 agnd 15 agnd 16 avdd 17 agnd 18 avdd 19 avdd 20 iout 21 iout 22 agnd 23 dacbp 24 dac_ r set 48 ps1 47 ps0 46 osk 45 sync_clk 44 sync_in 43 dvdd_i/o 42 dgnd 41 sdio 40 sclk 39 38 sdo 37 iosync 2 dvdd 3 dgnd 4 avdd 7 agnd 6 avdd 5 agnd 1 i/o update 8 osc/refclk 9 osc/refclk 10 crystal out 12 loop_filter 11 clkmodeselect figure 4. pin configuration note that the exposed paddle on the bottom of the package forms an electrical connection for the dac and must be attached to analog ground. note that pin 43, dvdd_i/o, can be powered to 1.8 v or 3.3 v. the dvdd pins (pin 2 and pin 34) must be powered to 1.8 v. table 3. pin function descriptions pin no. mnemonic i/o description 1 i/o update i the rising edge transfers the contents of the internal buffer memory to the i/o registers. see synchronizationregister updates (i/o update) section for details. 2, 34 dvdd i digital power supply pins (1.8 v). 3, 33, 42 dgnd i digital power ground pins. 4, 6, 13, 16, 18, 19, 25, 27, 29 avdd i analog power supply pins (1.8 v). 5, 7, 14, 15, 17, 22, 26, 32 agnd i analog power ground pins. 8 osc /refclk i oscillator input/complementary reference clock. when the refclk port is operated in single-ended mode, refclk should be decoupled to avdd with a 0.1 f capacitor. 9 osc/refclk i oscillator input/reference clock. see table 5 for details on the osc/refclk operation. 10 crystal out o output of the oscillator section. 11 clkmodeselect i control pin for the oscillator section (1.8 v logic only). see refclk input section for detailed instructions. 12 loop_filter i this pin provides the connection for the external zero compensation network of the refclk multipliers pll loop filter. the network varies base d on the multiplication value in the pll loop. see table 4 for details. 20 iout o complementary dac output. should be biased through a resistor to avdd, not agnd. 21 iout o dac output. should be biased through a resistor to avdd, not agnd. 23 dacbp i dac band gap decoupling pin. a 0.1 f capacitor to agnd is recommended. 24 dac_r set i a resistor (3.92 k nominal) connected from agnd to dac_r set establishes the reference current for the dac. see equation in dac output section. 28 comp_out o comparator output. 30 comp_in i comparator input.
ad9954 rev. b | page 9 of 40 pin no. mnemonic i/o description 31 comp_in i comparator complementary input. 35 pwrdwnctl i input pin used as an external power-down control (see table 9 for details). 36 reset i active high hardware reset pin. assertion of the reset pin forces the ad9954 to the default state, as described in the right-hand column of table 12, which is the i/o port register map. 37 iosync i asynchronous active high reset of the serial port controller. when high, the current i/o operation is immediately terminated, enabling a new i/o operation to commence once iosync is returned low. if unused, ground th is pin; do not allow this pin to float. 38 sdo o see serial interface port pin description section for details. 39 cs i see serial interface port pin description section for details. 40 sclk i see serial interface port pin description section for details. 41 sdio i/o see serial interface port pin description section for details. 43 dvdd_i/o i digital power supply. this pin is for i/o cells only, 3.3 v. 44 sync_in i input signal used to synchronize multiple ad 9954s. this input is connected to the sync_clk output of a master ad9954. 45 sync_clk o clock output pin that serves as a synchronizer for external hardware. 46 osk i input pin used to control the direction of the shaped on-off keying function when programmed for operation. osk is synchronous to the sync_clk pin. when osk is disabled, this pin should be tied to dgnd. 47, 48 ps0, ps1 i input pins used to select one of the intern al phase/frequency profiles. ps1 and ps0 are synchronous to the sync_clk pin. change on these pins triggers a transfer of the contents of the chosen internal buffer memory to the i/ o registers (sends an internal i/o update). <49> agnd i the exposed paddle on the bottom of the package. it is a ground connection for the dac and must be attached to agnd in any board layout.
ad9954 rev. b | page 10 of 40 typical performance characteristics center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-016 mkr1 101mhz ?70.68db marker 101mhz ?70.68db figure 5. f out = 1 mhz, f clk = 400 msps, wbsfdr center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-017 mkr1 90mhz ?69.12db marker 90mhz ?69.12db figure 6. f out = 10 mhz, f clk = 400 msps, wbsfdr center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-018 mkr1 80mhz ?68.44db marker 80mhz ?68.44db figure 7. f out = 40 mhz, f clk = 400 msps, wbsfdr center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-019 mkr1 160mhz ?61.55db marker 160mhz ?61.55db figure 8. f out = 80 mhz, f clk = 400 msps, wbsfdr center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-020 mkr1 160mhz ?56.2db marker 160mhz ?56.2db figure 9 f out = 120 mhz, f clk = 400 msps, wbsfdr center 100mhz #res bw 3khz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 3khz span 200mhz sweep 55.56 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-021 mkr1 80mhz ?53.17db marker 80mhz ?53.17db figure 10. f out = 160 mhz, f clk = 400 msps, wbsfdr
ad9954 rev. b | page 11 of 40 center 1.105mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa st ref ?4dbm peak log 10db/ atten 10db 1 03374-022 mkr1 1.105mhz ?5.679dbm marker 1.105000mhz ?5.679dbm figure 11. f out = 1.1 mhz, f clk = 400 msps, nbsfdr, 1 mhz center 10mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 1r 03374-023 mkr1 10mhz ?93.01db marker 10mhz ?93.01db figure 12. f out = 9.5 mhz, f clk = 400 msps, nbsfdr, 1 mhz center 39.9mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa ref 0dbm peak log 10db/ atten 10db 1 03374-024 mkr1 39.905mhz ?5.347dbm marker 39.905000mhz ?5.347dbm figure 13. f out = 39.9 mhz, f clk = 400 msps, nbsfdr, 1 mhz center 80.25mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa st ref ?4dbm peak log 10db/ atten 10db 1 03374-025 mkr1 80.301mhz ?6.318dbm marker 80.301000mhz ?6.318dbm figure 14. f out = 80.3 mhz, f clk = 400 msps, nbsfdr, 1 mhz center 120.2mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa st ref ?4dbm peak log 10db/ atten 10db 1 03374-026 mkr1 120.205mhz ?6.825dbm marker 120.205000mhz ?6.825dbm figure 15. f out = 120.2 mhz, f clk = 400 msps, nbsfdr, 1 mhz center 160.5mhz #res bw 30hz ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 vbw 30hz span 2mhz sweep 199.2 s (401 pts) w1 s2 s3 fc aa st ref ?4dbm peak log 10db/ atten 10db 1 03374-027 mkr1 600khz ?0.911db center 160.5000000mhz figure 16. f out = 160 mhz, f clk = 400 msps, nbsfdr, 1 mhz
ad9954 rev. b | page 12 of 40 f (hz) l(f) (dbc/hz) 10 ?170 ?160 ?150 ?140 ?130 ?120 ?110 ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 1k 100 100k 1m 10k 10m 03374-028 figure 17. residual phase noise with f out = 159.5 mhz, f clk = 400 msps; pll bypassed (green), pll set to 4 (red), and pll set to 20 (blue) 10 ?170 ?160 ?150 ?140 ?130 ?120 ?110 ?100 ?90 ?80 ?70 ?60 ?50 ?40 ?30 ?20 ?10 0 1k 100 100k 10k 1m 03374-029 f (hz) l(f) (dbc/hz) figure 18. residual phase noise with f out = 9.5 mhz, f clk = 400 msps; pll bypassed (green), pll set to 4 (red), and pll set to 20 (blue) ref2 200mv 500ns r2 r1 it 10.0ps/pt ?100ps m 500ps 20.0gs/s a ch1 708mv 03374-030 fall (r1) = 396.4ps rise(r2) = 464.3ps figure 19. comparator rise and fall time at 160 mhz
ad9954 rev. b | page 13 of 40 theory of operation component blocks refclk input the ad9954 supports several methods for generating the internal system clock. an on-chip oscillator circuit is available for initiating the low frequency reference signal by connecting a crystal to the clock input pins. the system clock can be generated using an internal, pll-based reference clock multiplier, allowing the part to operate with a low frequency clock source while still providing a high sample rate for the dds and dac. for best phase noise performance, a clean, stable clock with a high slew rate should be used to drive the refclk pin and bypass the multiplier. the available modes are configured using the clkmodeselect pin, cfr1<4> and cfr2<7:3>. note that the clkmodeselect pin is a 1.8 v logic only and does not apply to 3.3 v logic. pulling clkmodeselect high enables the on-chip crystal oscillator circuit. with the on-chip oscillator enabled, users of the ad9954 connect an external crystal to the refclk and refclk inputs to produce a low frequency reference clock (see table 1 for the crystal frequency range supported). the signal generated by the oscillator is buffered, and then delivered to the rest of the chip. this buffered signal is provided on the crystal out pin. when the internal oscillator is disabled, an external oscillator must provide the refclk and/or refclk signals. for differential operation, these pins are driven with complementary signals. for single-ended operation, a 0.1 f capacitor should be connected between the unused pin and the analog power supply. with the capacitor in place, the clock input pin bias voltage is 1.35 v. table 5 summarizes the clock modes of operation. note the pll multiplier is controlled via the cfr2<7:3> bits, independent of the cfr1<4> bit. clock multiplier an on-board pll allows multiplication of the refclk frequency. the multiplication factor is set using cfr2<7:3>. when programmed for values ranging from 0x04 to 0x14 (decimal 4 to 20), the pll multiplies the refclk input frequency by the programmed value. the user must consider the specified maximum frequency for the pll when programming. if the multiplication factor is changed, the user must allocate time to allow the pll to lock (approximately 1 ms). the pll is bypassed by programming a value outside the range of 4 to 20 (decimal). when bypassed, the pll is shut down to conserve power. the vco in the pll has a selectable frequency range. use the vco range bit (cfr2<2>) to set the appropriate range. the pll in the clock multiplier has a loop filter comprised of on-chip components as well as external components. recommended values for the external resistor/capacitor are provided in table 4. table 4. external loop filter components for clock multiplier multiply value resistor value capacitor value (f) 4 0 0.1 10 1 k 0.1 20 243 0.01 dac output unlike many dacs, the dac output on the ad9954 is referenced to avdd, not agnd. two complementary outputs provide a combined full-scale output current (i out ). differential outputs reduce the amount of common-mode noise that may be present at the dac output, resulting in a better signal-to-noise ratio. the full-scale current is controlled by means of an external resistor (r set ) connected between the dac_r set pin and the dac ground pin (pin 49, the exposed paddle). the full-scale current is proportional to the resistor value by the equation ? ? 39.19/ out set i r ? the maximum full-scale output current of the combined dac outputs is 15 ma. limiting the output to 10 ma maximum provides the best spurious-free dynamic range (sfdr) performance. the dac output compliance range is avdd + 0.5 v to avdd ? 0.5 v. voltages developed beyond this range result in excessive dac distortion and could potentially damage the dac output circuitry. proper attention should be paid to the load termination to keep the output voltage within this compliance range. table 5. clock input modes of operation cfr1<4> clkmodeselect cfr2<7:3> oscillator enabled? system clock frequency range (mhz) low high 4 m 20 yes f clk = f osc m 80 < f clk < 400 low high m < 4 or m > 20 yes f clk = f osc 20 < f clk < 30 low low 4 m 20 no f clk = f osc m 80 < f clk < 400 low low m < 4 or m > 20 no f clk = f osc 10 < f clk < 400 high x x no f clk = 0 n/a
ad9954 rev. b | page 14 of 40 comparator some applications (for example, clocking) prefer a square-wave signal rather than a sine wave. in support of such applications, the ad9954 includes an on-chip comparator. the comparator has a bandwidth greater than 200 mhz and a common-mode input range of 1.3 v to 1.8 v. the comparator can be turned off to reduce power consumption using the comparator power- down bit, cfr1<6>. frequency accumulator this block is used for linear sweep mode; transitioning from the start frequency (f0) to the terminal frequency (f1) is not instantaneous but instead is implemented in a swept or ramped fashion. this frequency ramping is accomplished by stepping through intermediate frequencies between f0 and f1. the linear sweep block uses the falling and rising delta frequency tuning words, the falling and rising delta frequency ramp rates, and the frequency accumulator. the linear sweep enable bit cfr1<21> enables the linear sweep block. the linear sweep no dwell bit establishes the action to be performed upon reaching the terminal frequency in a sweep. see the modes of operation section for more details. dds core the output frequency ( f o ) of the dds is a function of the frequency of system clock (sysclk), the value of the frequency tuning word ( ftw ), and the capacity of the phase accumulator (2 32 , in this case). the exact relationship is given below with fs defined as the frequency of sysclk. f o = ( ftw )( f s )/2 32 with 0 ftw 2 31 f o = f s (1 ? ( ftw /2 32 )) with 2 31 < ftw < 2 32 ? 1 each system clock cycle, the ftw is added to the value previously held in the phase accumulator. the value at the output of the phase accumulator is then summed with a user- defined, 14-bit phase offset value (pow). the most significant 19 bits of that summation are then translated to an amplitude value via the cos(x) functional block. truncation of the lsbs is implemented to reduce the power consumption of the dds core. this truncation does not reduce frequency resolution. in certain applications, it is desirable to have the ability to force the output signal to zero phase. simply setting the ftw to 0 does not accomplish this; it only stalls the core at its current phase value. a control bit is provided to force the phase accumulator output to zero. at power-up, the clear phase accumulator bit is set to logic 1, but the buffer memory for this bit is cleared (logic 0). therefore, upon power-up, the phase accumulator remains clear until the first i/o update is issued. i/o update transfers data from the input buffers to the active control registers. see the functionality of the sync_clk and i/o update section for more details. frequency tuning word mux as shown in figure 2, there are three sources for the ftw that are fed to the dds core as the seed value for the phase accumulator: a frequency accumulator, the static ram, and the registers of the control logic. for applications where a static output frequency or more than four predefined output frequencies need to be switched between, in some variable or undefined order, the primary method of setting the ftw is by programming the desired value into the ftw0 register. for applications where up to four specific sets of ftws, or pre- defined series of ftws are needed, the on-board ram can be programmed with the desired ftws, and the profile pins can be used to toggle between those sets/series. for applications where a steady sweeping of frequency is desired, a second frequency accumulator is provided. the seed value and minimum/maximum numbers for the frequency accumulator are user programmable, although certain rules must be followed to avoid overflowing that accumulator. phase offset word mux as shown in figure 2, there are two sources for the pow that are fed to the dds core as an adder to the output of the phase accumulator: the static ram and the registers of the control logic. using this feature enables synchronization of the dds output to other system signals as well as phase modulation. for applications where a static output phase or more than four predefined output phases need to be switched between, in some variable or undefined order, the primary method of setting the pow is by programming the desired value into the pow0 register. for applications where up to four specific sets of pows, or predefined series of pows are needed, the on-board ram can be programmed with the desired pows, and the profile pins can be used to toggle between those sets/series. the phase offset formula is ?? ? ? ? ? ? ? ?? 360 2 pow 14 a digital delay block exists in the phase offset programming path to ensure matched latency with changes to the frequency tuning word. this enables users to easily program the device to change from one combined phase/frequency combination to another smoothly and seamlessly. continuous and clear-and-release frequency and phase accumulator clear functions the ad9954 allows for a continuous zeroing of the frequency sweep logic and the phase accumulator as well as a clear and release or automatic zeroing function. the auto clear bits are cfr1<14:13>. the continuous clear bits are cfr1<11:10>.
ad9954 rev. b | page 15 of 40 clear-and-release function when set for auto clearing, the corresponding accumulator is cleared and then begins to accumulate again upon receipt of an i/o update or change on one of the profile pins. this is repeated for every subsequent i/o update or change on one of the profile pins until the appropriate autoclear control bit is cleared. it is perfectly valid to have one accumulator set to autoclearing and the other set to continuous clear. amplitude control options shaped on-off keying the shaped on-off keying function is enabled/disabled using the osk enable bit (cfr1<25>). this function allows the user to control the ramp-up and ramp-down time when turning the dac on or off. this function is primarily used in burst transmissions of digital data to reduce the adverse spectral impact of short, abrupt bursts of data. both auto and manual shaped on-off keying modes are supported. cfr1<24> is used to select between auto and manual on-off keying modes. figure 20 shows the block diagram of the osk circuitry. autoshaped on-off keying mode operation when autoshaped on-off keying mode is enabled, a single-scale factor is internally generated and applied to the multiplier input for scaling the output of the dds core block (see figure 20). the scale factor is the output of a 14-bit counter that increments/ decrements at a rate determined by the contents of the 8-bit output ramp rate register. the scale factor increments if the osk pin is high and decrements if the osk pin is low. the scale factor is an unsigned value; all 0s multiply the dds core output by 0 (decimal), and 0x3fff multiplies the dds core output by 16,383 (decimal). table 6 details the increment/decrement step size of the internally generated scale factor per the asf<15:14> bits. note that the maximum amplitude allowed is limited by the contents of the amplitude scale factor register, allowing the user to ramp to a value less than full scale. table 6. autoscale factor internal step size asf<15:14> (binary) increment/decrement size 00 1 01 2 10 4 11 8 osk ramp rate timer the osk ramp rate timer is a loadable down counter, which generates the clock signal to the 14-bit counter that generates the internal scale factor. the ramp rate timer is loaded with the value of the autoscale factor register (asfr) every time the counter reaches 1 (decimal). this load and countdown operation continues for as long as the timer is enabled, unless the timer is forced to load before reaching a count of 1. if the load arr control bit (cfr1<26>) is set, the ramp rate timer is loaded upon an i/o update, upon a change in profile input, or upon reaching a value of 1. the ramp timer can be loaded before reaching a count of 1 by three methods. the first method is by toggling the osk pin or sending a rising edge to the i/o update pin (or changing the state of a profile pin). for this method, the asfr value is loaded into the ramp rate timer, which then proceeds to count down as normal. the second method is if the load arr control bit (cfr1<26>) is set and an i/o update (or change in profile) is issued. the last method is by setting the sweep enable bit. this switches from inactive autoshaped on-off keying mode to the active autoshaped on-off keying mode. 0 3374-005 osk pin load osk timer cfr1<26> sync_clk auto osk enable cfr1<24> to dac autoscale factor generator ramp rate timer clock dds core osk enable cfr<25> amplitude scale factor register (asf) 0 0 1 01 01 hold inc/dec enable out cos(x) amplitude ramp rate register (asf) up/dn data load en figure 20. on-off shaped keying, block diagram
ad9954 rev. b | page 16 of 40 manual shaped on-off keying mode operation when configured for manual shaped on-off keying, the content of the asfr sets the scale factor for the data path. modes of operation single-tone mode in single-tone mode, the dds core uses a static tuning word. whatever value is stored in ftw0 is supplied to the phase accumulator. this value can only be changed manually by writing a new value to ftw0 and then by issuing an i/o update. phase adjustments are made using the phase offset register. ram-controlled modes of operation three important points apply to the ram-controlled modes: ? the user must ensure that the beginning address is lower than the final address. ? changing profiles or issuing an i/o update automatically terminates the current sweep and starts the next sweep, unless otherwise stated. ? setting the ram destination bit true such that the ram output drives the phase offset adder is valid. while the sections that follow describe frequency sweeps, phase sweep operation is also available. the ram destination bit (cfr1<30>) controls whether the ram output drives the phase accumulator (frequency) or the phase offset adder (phase). the ad9954 offers five modes of ram-controlled operation (see table 7). table 7. ram modes of operation rscw<7:5> (binary) mode notes 000 direct switch no sweeping, profiles valid, no dwell ignored 001 ramp up sweeping, profiles valid, no-dwell valid 010 bidirectional ramp sweeping, ps0 is a direction control pin, no-dwell ignored 011 continuous bidirectional ramp sweeping, profiles valid, no-dwell ignored 100 continuous recirculation sweeping, profiles valid, no-dwell ignored 101, 110, 111 invalid mode default to direct switch direct switch mode direct switch mode enables frequency shift keying (fsk) or phase shift keying (psk) modulation. the ad9954 is programmed for direct switch using the ram enable bit (cfr1<31>) and programming the ram segment mode control bits of each desired profile to 000(b). this mode simply reads the ram contents at the ram segment beginning address for the current profile. no address ramping occurs in this mode. to perform 4-tone shift keying, the user programs each ram segment control word for direct switch mode and a unique beginning address value. program the ram enable and ram destination bits (cfr1<31:30>) to enable the ram and direct the ram output to be the ftw (fsk) or the pow (psk). the ps1 and ps0 inputs are the 4-tone fsk/psk data inputs. when the profile is changed, the data stored at the new profile is loaded into either the phase accumulator (fsk) or the phase offset adder (psk). when set for psk, bits<17:0> of the ram output are unused when the ram destination bit is set. two- tone shift keying only uses one profile pin. ramp-up mode ramp-up mode, in conjunction with the segmented ram capability, allows up to four different sweep profiles to be programmed into the ad9954. the ad9954 is programmed for ramp-up mode by enabling the ram using the ram enable bit (cfr1<31>) and programming the ram mode control bits of each profile to be used to 001(b). when a sweep is initiated (via an i/o update or change in profile bits), the ram address generator loads the ram segment beginning address bits of the current rscw, driving the ram output from this address, and the ramp rate timer loads the ram segment address ramp rate bits. when the ramp rate timer finishes a cycle, the ram address generator increments to the next address, the timer reloads the ramp rate bits and begins a new countdown cycle. this sequence continues until the ram address generator has incremented to an address equal to the ram segment final address bits of the current rscw. at this point, the next state is dependent upon whether no-dwell mode is active. see the no-dwell bit (cfr1<2>) in the register maps (see table 12 and table 13). in this mode, asymmetrical fsk modulation can be implemented by configuring the ram for two segments, and using the ps0 pin as the data input. bidirectional ramp mode bidirectional ramp mode allows the ad9954 to offer a symmetrical sweep between two frequencies using the ps0 signal as the control input. the ad9954 is programmed for bidirectional ramp mode using the ram enable bit (cfr1<31>) and programming the ram segment mode control bits of each desired profile to 010(b). ps1 input is ignored; the ps0 input is the ramp direction indicator. the memory is not segmented, using only one beginning and one final address. the address registers for controlling ram are located in the ram segment control word (rscw) associated with profile 0.
ad9954 rev. b | page 17 of 40 upon entering this mode (via an i/o update or changing the ps0 pin), the ram address generator loads the ram segment beginning address bits of rscw0 and the ramp rate timer loads the ram segment address ramp rate bits. the ram drives data from the beginning address, and the ramp rate timer begins counting down to 1. when the timer reaches zero, the ram address is incremented if ps0 is high and decrements if ps0 is low. toggling the ps0 pin does not cause the device to generate an internal i/o update; transfers of data from the i/o buffers to the internal registers are only initiated by a rising edge on the i/o update pin. ram address control is now a function of the ps0 input. when polarity of the ps0 bit is changed, the ram address generator increments/decrements to the next address and the ramp rate timer is reloaded. as in the ramp-up mode, this sequence continues until the ram address generator has incremented/ decremented to an address equal to the final/beginning address as long as the ps0 input remains high/low. once the final/ beginning address is reached, the sweep stalls until the polarity on ps0 is changed. all data in the ram segment control words associated with profile 1, profile 2, and profile 3 are ignored. only the information in the ram segment control word for profile 0 is used to control the ram. continuous bidirectional ramp mode continuous bidirectional ramp mode allows the ad9954 to offer an automatic, symmetrical sweep between two frequencies. the ad9954 is programmed for continuous bidirectional ramp mode using the ram enable bit (cfr1<31>) and programming the ram segment mode control bits of each desired profile to 011(b). in general, this mode is identical in control to the bidirectional ramp mode, except the ramp up and down is automatic (no external control via the ps0 input), and switching profiles are valid. this mode enables generation of an automatic saw tooth sweep characteristic. upon entering this mode (via an i/o update or changing the ps1 or ps0 pins), the ram address generator loads the ram segment beginning address bits of the current rscw and the ramp rate timer loads the ram segment address ramp rate bits. the ram drives data from the beginning address, and the ramp rate timer begins counting down to 1. when the ramp rate timer completes the countdown, the ram address generator increments to the next address, and the timer reloads the ramp rate bits and continues counting down. this continues until the ram address generator has incremented to an address equal to the ram segment final address bits of the current rscw. upon reaching this final address, the ram address generator begins decrementing each time the ramp rate timer completes a countdown cycle until it reaches the ram segment beginning address. upon reaching the beginning address, the entire sequence repeats until a new mode is selected. continuous recirculation mode continuous recirculation mode allows the ad9954 to offer an automatic, continuous unidirectional sweep between two frequencies. the ad9954 is programmed for continuous recirculation mode using the ram enable bit (cfr1<31>) and programming the ram segment mode control bits of each desired profile to 100(b). upon entering this mode (via an i/o update or changing pin ps1 or pin ps0), the ram address generator loads the ram segment beginning address bits of the current rscw and the ramp rate timer loads the ram segment address ramp rate bits. the ram drives data from the beginning address, and the ramp rate timer begins to count down to 1. when the ramp rate timer completes a cycle, the ram address generator increments to the next address, and the timer reloads the ramp rate bits and continues counting down. this sequence continues until the ram address generator has incremented to an address equal to the ram segment final address bits of the current rscw. upon reaching this terminal address, the ram address generator reloads the ram segment beginning address bits and the sequence repeats until a new mode is selected. internal profile control the ad9954 offers a mode in which a composite frequency sweep can be built with software-programmable timing control. internal profile control capability disengages the ps1 pin and the ps0 pin and enables the ad9954 to take control of switching between profiles. modes are defined that allow continuous or single-burst profile switches for three combinations of profile selection bits (see table 8). internal profile control mode is engaged using bits cfr1<29:27> per table 8. internal profile control is only valid when the device is operating in ram mode. there is no internal profile control for linear sweeping operations. when the internal profile control mode is engaged, the ram segment mode control bits are ignored; the device operates all profiles in ramp-up mode. switching between profiles occurs when the ram address generator has exhausted the memory contents for the current profile.
ad9954 rev. b | page 18 of 40 table 8. internal profile control cfr1<29:27> (binary) mode description 000 internal control inactive 001 internal control active, single-burst, activate profile 0, then profile 1, then stop 010 internal control active, single-burst, activate profile 0, then profile 1, then profile 2, then stop 011 internal control active, single-burst, activate profile 0, then profile 1, then profile 2, then profile 3, then stop 100 internal control active, continuous, activate profile 0, then profile 1, then loop starting 0 101 internal control active, continuous, activate profile 0, then profile 1, then profile 2, then loop starting 0 110 internal control active, continuous, activate profile 0, then profile 1, then profile 2, then profile 3, and then loop starting 0 111 invalid a single-burst mode is one in which the composite sweep is executed once. for example, assume the device is programmed for ramp-up mode and the cfr1<29:27> bits are written to logic 010(b). upon receiving an i/o update, the internal control logic signals the device to begin executing the ramp-up mode sequence for profile 0. upon reaching the ram segment final address value for profile 0, the device jumps to the beginning address of profile 1 and begins executing that ramp-up sequence. upon reaching the ram segment final address value for profile 1, the device jumps to the beginning address of profile 2 and begins executing that ramp-up sequence. when the ram segment final address value for profile 2 is reached, the sequence is over and the composite sweep has completed. issuing another i/o update restarts the burst process. a continuous internal profile control mode is one in which the composite sweep is continuously executed for as long as the device is programmed into that mode. using the previous example, except programming the cfr1<29:27> bits to logic 101(b), the operation would be identical until the ram segment final address value for profile 2 is reached. at this point, instead of stopping the sequence, the device jumps back to the beginning address of profile 0 and continues sweeping. linear sweep mode the ad9954 is placed in linear sweep mode using the linear sweep enable bit cr1<21>. ps1 must be tied low. when in linear sweep mode, the ad9954 output frequency ramps up from a starting frequency, programmed by ftw0 to a finishing frequency ftw1, or down from ftw1 to ftw0. the delta frequency tuning words and the ramp rate word determine the rate of this ramping. the linear sweep no-dwell bit cfr1<2> controls the behavior of the device upon reaching the final frequency. when ps0 is high, the 32-bit rising delta frequency tuning word (rdftw) is the seed value for the frequency accumulator, it ramps from ftw0 to ftw1 and the rsrr register is loaded into the sweep rate timer. when the timer counts down to one, the frequency accumulator cycles once, increasing by the seed value. this accumulation of the rdftw at the rate given by the ramp rate (rsrr) continues until the output of the frequency adder is equal to the ftw1 register value, or ps0 is pulled low. when ps0 is low, the 32-bit falling delta frequency tuning word (fdftw) is the seed value for the frequency accumulator, it ramps down from ftw1 to ftw0 and the fsrr register is loaded into the sweep rate timer. when the timer counts down to one, the frequency accumulator cycles once, decreasing by the seed value. this accumulation of the fdftw at the rate given by the ramp rate (fsrr) continues until the output of the frequency adder is equal to the ftw0 register value, or ps0 is pulled high. pin ps0 controls the direction of the sweep, rising to ftw1 or falling to ftw0. upon reaching the destination frequency, the ad9954 linear sweep function either holds at the destination frequency until the state on ps0 is changed or immediately returns to the initial frequency, ftw0, depending on the state of the linear sweep no-dwell bit cfr1<02>. while operating in linear sweep mode, toggling ps0 does not cause the device to generate an internal i/o update. when ps0 is acting as the sweep direction indicator, any transfer of data from the i/o buffers to the internal registers can only be initiated by a rising edge on the i/o update pin. the linear sweep function of the ad9954 requires the lowest frequency to be loaded into the ftw0 register and the highest frequency into the ftw1 register. for piece-wise, nonlinear frequency transitions, it is necessary to reprogram the registers while the frequency transition is in process. after a reset, the device is initially in single-tone mode. the programming steps to operate in linear sweep mode are: 0) ps1:0 = 00. 1) set the linear sweep enable bit (cfr1<21>) and set or clear the linear sweep no-dwell bit (cfr1<2>) as desired. 2) program the rising and falling delta frequency tuning words and ramp rate values. 3) program the lower and higher output frequencies into the ftw0 and ftw1 registers, respectively. 4) apply an i/o update to move this data into the registers (the instantaneous output frequency is ftw0). 5) change the ps0 input as desired to sweep between the lower to higher frequency and back. figure 21 depicts a typical frequency ramping operation. the device initially powers up in single-tone mode. the profile inputs are low, setting ftw0 as the seed value for the phase accumulator. the user then writes to the linear sweep enable bit, the rising and falling delta frequency tuning words, and ramp rates via the serial port (point a in figure 21. in this example, the linear sweep no-dwell bit is cleared (cfr1<2>).
ad9954 rev. b | page 19 of 40 03374-003 ftw0 single-tone mode linear sweep mode at point a: load rising ramp rate register, apply rising dftw. at point b: load falling ramp rate register, apply falling dftw. ps<0> = 1 ps<0>=0 ps<0>=0 time ftw1 a b f out figure 21. linear sweep frequency plan 03374-004 ftw0 single-tone mode linear sweep mode enable?no dwell bit set ftw1 aa a b bb f out time ps<0> = 1 ps<0> = 0 ps<0> = 0 ps<0> = 1 ps<0> = 1 ps<0> = 0 figure 22. linear sweep using no-dwell frequency plan linear sweep no-dwell feature see cfr1<2> in the register maps (see table 12 and table 13) for general details of the no-dwell mode. figure 22 depicts the linear sweep mode operation when the linear sweep no-dwell bit is set. the label a points indicate where a rising edge on ps0 is detected; the label b points indicate where the ad9954 has determined f out has reached the terminal frequency and automatically returns to the starting frequency. note that in this mode, only sweeps from ftw0 to ftw1 using the positive linear sweep control word are supported. toggling ps0 from 1 to 0 neither initiates a falling sweep when the no-dwell bit is set, nor interrupts a positive sweep already underway. resetting the ramp rate timer the ramp timer can be reset before reaching a count of 1 by three methods. method one is by changing the ps0 input pin. when the ps0 input pin toggles from 0 to 1, the rsrrw value is loaded into the ramp rate timer, which then proceeds to countdown as normal. when the ps0 input pin toggles from 0 to 1, the falling sweep ramp rate word (fsrrw) value is loaded into the ramp rate timer, which then proceeds to countdown as normal. the second method uses the load srr @ i/o ud bit (cfr1<15>), see table 12 for details.
ad9954 rev. b | page 20 of 40 the last method in which the sweep ramp rate timer can be reset is changing from inactive linear sweep mode to active linear sweep mode using the linear sweep enable bit (cfr1<21>). for methods two and three, the ramp rate timer loads a value determined by the state of ps0 (0 = fsrrw, 1 = rsrrw). power-down functions of the ad9954 the ad9954 supports an externally controlled (or hardware) power-down feature as well as software-programmable power- down bits capable of individually powering down specific unused circuit blocks. software-controlled power-down enables individual powering down of the dac, comparator, pll, input clock circuitry, and the digital logic (cfr1<7:4>). with the exception of cfr1<6>, these bits are superseded when the externally controlled power- down pin (pwrdwnctl) is high. external power-down control is supported on the ad9954 via the pwrdwnctl input pin. when the pwrdwnctl input pin is high, the ad9954 enters a power-down mode based on the cfr1<3> bit. when the pwrdwnctl input pin is low, it operates normally. see cfr1<3> in table 12 for details. table 9 details the logic level for each power-down bit that drives out of the ad9954 core logic to the analog section and the digital clock generation section of the chip for the external power-down operation. table 9. power-down control functions control mode active description pwrdwnctl = 0, cfr1<3> dont care software control digital power-down = cfr1<7> comparator power-down = cfr1<6> dac power-down = cfr1<5> clock input power-down = cfr1<4> pwrdwnctl = 1, cfr1<3> = 0 external control, fast recovery power-down mode digital power-down = 1b1 comparator power-down = 1b0 or cfr1<6> dac power-down = 1b0 clock input power-down = 1b0 pwrdwnctl = 1, cfr1<3> = 1 external control, full power-down mode digital power-down = 1b1 comparator power-down = 1b1 dac power-down = 1b1 clock input power-down = 1b1
ad9954 rev. b | page 21 of 40 synchronizationregister updates (i/o update) functionality of the sync_clk and i/o update data into the ad9954 is synchronous to the sync_clk signal (supplied externally to the user on the sync_clk pin). the i/o update pin is sampled on the rising edge of the sync_clk. internally, sysclk is fed to a divide-by-four frequency divider to produce the sync_clk signal. the sync_clk signal is made available to the system on the sync_clk pin. this enables synchronization of external hardware with the devices internal clocks. this is accomplished by providing the sync_clk signal as an output that external hardware can then use to synchronize against. the i/o update signal coupled with sync_clk is used to transfer internal buffer contents into the control registers. the combination of the sync_clk pin and the i/o update pin provides the user with constant latency relative to sysclk and ensures phase continuity of the analog output signal when a new tuning word or phase offset value is asserted. figure 23 and figure 24 demonstrate an i/o update timing cycle and synchronization. synchronization logic notes include the following: ? the i/o update signal is edge detected to generate a single- cycle clock signal that drives the register bank flops. the i/o update signal has no constraints on duty cycle. the minimum low time on i/o update is one sync_clk clock cycle. ? the i/o update pin is set up and held around the rising edge of sync_clk. setup and hold time specifications can be found in table 2. 03374-006 sysclk sdio sync_clk disable 10 0 sclk to core logic cs osk d q ps<1:0> d q i/o update d q 4 sync_clk gating edge detection logic register memory i/o buffer latches figure 23. i/o synchronization block diagram sync_clk sysclk ab data in registers data in i/o buffers i/o update the device registers an i/o update at point a. the data is transferred from the asynchronously loaded i/o buffers at point b. 0 3374-007 n ? 1 n n + 1 n n + 1 n + 2 figure 24. i/o synchronization timing diagram
ad9954 rev. b | page 22 of 40 synchronizing multiple ad9954s there are three modes of synchronization available to the user: an automatic synchronization mode, a software-controlled manual synchronization mode, and a hardware-controlled manual synchronization mode. the following requirements apply to all modes. first, all units must share a common clock source. trace lengths and path impedance of the clock tree must be designed to keep the phase delay of the different clock branches as closely matched as possible. second, the i/o update signals rising edge must be provided synchronously to all devices being synchronized. finally, the dvdd_i/o supply should be set to 3.3 v for all devices that are to be synchronized. avdd and dvdd should be left at 1.8 v. in automatic synchronization mode, one device is chosen as a master, the other device(s) is slaved to this master. all slaves automatically synchronize their internal clocks to the sync_clk output signal of the master device. use the automatic synchronization bit (cfr1<23>) to configure each slave. connect the sync_in input(s) to the master sync_clk output. slave devices continuously update the phase relationship of their sync_clk until it is in phase with the sync_in input. the high speed sync enhancement enable bit (cfr2<11>) must be programmed correctly. in software manual synchronization mode, the user can force the device to advance the sync_clk rising edge one sysclk cycle (? sync_clk period). manual synchronization mode is established using the slave devices software manual synchronization bit (cfr1<22>). see the bit description in table 12 for more details. in hardware manual synchronization mode, the sync_in input pin is configured such that it now advances the rising edge of the sync_clk signal each time the device detects a rising edge on the sync_in pin. hardware manual synchronization mode is established using the hardware manual synchronization bit (cfr2<10>). see the bit description in table 12 for more details. using a single crystal to drive multiple ad9954 clock inputs the ad9954 crystal oscillator output signal is available on the crystal out pin, enabling one crystal to drive multiple ad9954s. to drive multiple ad9954s with one crystal, the crystal out pin of the ad9954 using the external crystal should be connected to the refclk input of the other ad9954. the crystal out pin must be enabled using the crystal out pin active bit cfr2<9>. the drive strength of the crystal out pin is fairly low; therefore, the signal should be buffered if multiple loads are being driven. ram the ad9954 incorporates a block of sram. the ram is a bidirectional single port. read and write operations cannot occur simultaneously. write operations to the serial i/o port take precedence; therefore, if an attempt to write to ram is made during a read operation, the read operation is halted. the ram is configurable using the ram segment control word<7:5> and data in the control function register. using the ram enable bit (cfr1<31>), the ram output can be enabled to drive the input to either the phase accumulator or the phase offset adder; the ram destination bit (cfr1<30>) sets the routing. when the ram output drives the phase accumulator, the phase offset word (pow, address 0x05) drives the phase-offset adder. conversely, when the ram output drives the phase-offset adder, the frequency tuning word (ftw, address 0x04) drives the phase accumulator. when cfr1<31> disables the ram, it is inactive unless being written to via the serial port. the ram is mapped into one of four profiles determined by the ps1 and ps0 input pins. note that these profiles may overlap. for example, profile 0 may use ram address location 0 to address location 12, and profile 1 may use ram address location 5 to address location 20, and so forth. all ram write or read operations to/from the ram are controlled by the ps1 and ps0 input pins and the respective ram segment control word. to write to the ram, a ram segment must be defined in a ram segment control word. the ram segment that was defined must then be selected by use of the profile select pins, ps0 and ps1. with the correct ram segment selected, the special instruction byte of 0xb0 should be sent. when the instruction byte to write to the ram is sent to the part, the serial port controller immediately polls the corresponding ram segment control word. from this register, the serial port controller makes note of the start address and the stop address. it then calculates how many entries there are in the segment, and how many bytes of data to expect. after sending the special instruction byte of 0xb0, the user must send all ram entries for the currently selected profile to the part. for example, consider a case where ram segment 2 begins at address 21 and ends at address 120. first, write to ram segment control word 2 with a starting address of 21, with a stop address of 120, and specify a ramp rate and a mode of operation. next, set ps1 to 1 and ps0 to 0 to select ram segment 2 and then send the instruction byte of 0xb0. the part is now ready to put the first 32-bit word into the ram at address 21, to expect 100 32-bit words, and to store the last one at address 120. it automatically controls sending the data from the serial port to the correct ram address. therefore, precede sending 100 32-bit words of data to the part. after the 3200th sclk cycle, the write operation is complete, and all 100 words are stored in the ram, from address 21 to address 120.
ad9954 rev. b | page 23 of 40 serial i/o port the ad9954 serial port is a flexible, synchronous, serial communications port that easily interfaces to many industry- standard microcontrollers and microprocessors. the serial i/o port is compatible with most synchronous transfer formats, including both the motorola 6905/11 spi? and intel? 8051 ssr protocols. the interface accesses all registers that configure the ad9954. msb first and lsb first transfer formats are supported. in addition, the ad9954s serial interface port can be configured as a single pin i/o (sdio), which allows a 2-wire interface, or two unidirectional pins for in/out (sdio/sdo), which enables a 3-wire interface. two optional pins, iosync and cs , provide further flexibility for system design with the ad9954. serial port operation with the ad9954, the instruction byte specifies read/write operation and register address. serial operations on the ad9954 only occur at the register level, they do not occur on the byte level. for the ad9954, the serial port controller recognizes the instruction byte register address and automatically generates the proper register byte address. in addition, the controller expects to access all bytes of that register. it is a requirement that all bytes of a register be accessed during serial i/o operations, with one exception; the iosync function can be used to abort an i/o operation, thereby allowing less than all bytes to be accessed. there are two phases to a communication cycle with the ad9954. phase 1 is the instruction cycle, which is the writing of an instruction byte into the ad9954, coincident with the first eight sclk rising edges. the instruction byte provides the ad9954 serial port controller with information regarding phase 2, the data transfer cycle. the instruction byte defines whether the upcoming data transfer is a read or a write and the serial address of the register being accessed. the first eight sclk rising edges of each communication cycle are used to write the instruction byte into the ad9954. the remaining sclk edges are for phase 2 of the communication cycle. phase 2 is the actual data transfer between the ad9954 and the system controller. the number of bytes transferred during phase 2 of the communication cycle is a function of the register being accessed. for example, when accessing the control function register 2, which is three bytes wide, phase 2 requires that three bytes be transferred. if accessing the frequency tuning word, which is four bytes wide, four bytes must be transferred. after transferring all data bytes per the instruction byte, the communication cycle is complete. at the completion of any communication cycle, the ad9954 serial port controller expects the next eight rising sclk edges to be the instruction byte of the next communication cycle. all data input to the ad9954 is registered on the rising edge of sclk. all data is driven out of the ad9954 on the falling edge of sclk. figure 25 through figure 28 are provided to aid in understanding the general operation of the ad9954 serial port. 03374-008 i 6 i 5 i 4 i 3 i 2 i 1 d 5 d 4 d 3 d 2 d 1 d 0 i 0 d 7 d 6 i 7 instruction cycle sclk sdio data transfer cycle cs figure 25. serial port write timing?clock stall low 03374-009 i 6 i 5 i 4 i 3 i 2 i 1 i 0 don't care i 7 instruction cycle sclk sdio data transfer cycle d o 5 d o 4 d o 3 d o 2 d o 1 d o 0 d o 7 d o 6 sdo cs figure 26. 3-wire serial port read timing?clock stall low 03374-010 i 6 i 5 i 4 i 3 i 2 i 1 d 5 d 4 d 3 d 2 d 1 d 0 i 0 d 7 d 6 i 7 instruction cycle sclk sdio data transfer cycle cs figure 27. serial port write timing?clock stall high
ad9954 rev. b | page 24 of 40 03374-011 i 6 i 5 i 4 i 3 i 2 i 1 d o 5 d o 4 d o 3 d o 2 d o 1 d o 0 i 0 d o 7 d o 6 i 7 instruction cycle sclk sdio data transfer cycle cs figure 28. 2-wire serial port read timingclock stall high serial interface port pin descriptions sclkserial clock. the serial clock pin is used to synchronize data to and from the ad9954 and to run internal state machines. sclk maximum frequency is 25 mhz. cs chip select. cs is an active low input that enables devices sharing a serial communications line to be individually programmed. the sdo and sdio pins go to a high impedance state when this input is high. if driven high during any communications cycle, that cycle is suspended until cs is reactivated low. chip select can be tied low if it is not needed. sdio serial data i/o. data written to the ad9954 must be sent to this pin. however, this pin can be used as a bidirectional data line. cfr1<9> controls the configuration of this pin. sdoserial data out. data is read from this pin for protocols that use separate lines for transmitting and receiving data. when in 2-wire serial programming mode, this pin is set to a high impedance state. iosyncsynchronizes the i/o port state machines without affecting the addressable registers contents. an active high input on the iosync pin aborts the current communication cycle. after iosync returns low (logic 0), another communication cycle may begin, starting with the instruction byte write. msb/lsb transfers the ad9954 serial port can support either msb first or lsb first data formats. this functionality is controlled by the lsb first bit cfr1<8>. for msb first operation, the serial port controller generates the most significant byte (of the specified register) address first followed by the next lesser significant byte addresses until the i/o operation is complete. all data written to (read from) the ad9954 must be in msb first order. if the lsb mode is active, the serial port controller generates the least significant byte address first followed by the next greater significant byte addresses until the i/o operation is complete. all data written to (read from) the ad9954 must be in lsb first order. example operation as an example, consider the case of writing the amplitude scale factor (asf) register to a value of 0.5 full scale. first, calculate the binary equivalent of 0.5. as the asf is 16 bits wide, the hexadecimal equivalent is 0x80. next, for msb first format, transmit an instruction byte of 0x02 (serial address of asf is 00010(b)). from this instruction, the internal controller polls the register at this memory location and notes that the asf is 2 bytes wide. the serial port controllers state machines sets to 16 and awaits 16 rising edges on the sclk and 16 bits of data on the sdio line. send 16 rising edges on sclk, and the binary data 10000000 00000000 on the sdio line. to write the amplitude scale factor register in lsb first format, the process is the same as in msb first; however, the data is bit wise inverted on a word-by-word basis. the instruction byte is 0x40. the binary data for the asf is 00000000 00000001. scl k sdio cs tcsu tdsu tdh tdh dvdd i/o = 3.3v tcsu = 3ns tdsu = 3ns tdh = 0ns dvdd i/o = 1.8v tcsu = 5ns tdsu = 5ns tdh = 0ns 03374-036 figure 29. timing diagram for data write to ad9954 tdv = 25ns s cl k sdio sdo 03374-037 figure 30. timing diagram for data read to ad9954 ram i/o via serial port accessing the ram via the serial port is identical to any other serial i/o operation except that the number of bytes transferred is determined by the address space between the beginning address and the final address as specified in the current ram segment control word (rscw). the final address describes the most significant word address for all i/o transfers and the beginning address specifies the least significant address. ram i/o supports msb/lsb first operation as set using the lsb first bit cfr1<8>. when in msb first mode, the first data byte is for the most significant byte of the memory address described by the final address with the remaining three bytes making up the lesser significant bytes of that address. the remaining bytes come in most significant to least significant, destined for ram addresses generated in descending order
ad9954 rev. b | page 25 of 40 until the final four bytes are written into the address specified as the beginning address. when in lsb first mode, the first data byte is for the least significant byte of the memory (specified by the beginning address) with the remaining three bytes making up the greater significant bytes of that address. the remaining bytes come in least significant to most significant, destined for ram addresses generated in ascending order until the final four bytes are written into the memory address described by the final address. the ram uses serial address 01011(b); therefore, the instruction byte to write the ram is 0x0b, in msb first notation. as previously mentioned, the ram addresses generated are specified by the beginning and final address of the rscw currently selected by pin ps1 and pin ps0. notes on serial port operation ? the configuration changes made using cfr1<9:8> are implemented immediately upon writing to this register. for multibyte transfers, writing to this register may occur during the middle of a communication cycle. care must be taken to compensate for this new configuration for the remainder of the current communication cycle. ? the system must maintain synchronization with the ad9954 or the internal control logic cannot recognize further instructions. for example, if the system sends an instruction byte that describes writing a 2-byte register, and then pulses the sclk pin for a 3-byte write (24 additional sclk rising edges), communication synchronization is lost. in this case, the first 16 sclk rising edges after the instruction cycle properly write the first two data bytes into the ad9954, but the next eight rising sclk edges are interpreted as the next instruction byte. in the case where synchronization is lost between the system and the ad9954, the iosync pin enables the user to reset the ad9954 serial port controller state machine. any information that is written to the ad9954 registers during a valid communication cycle prior to loss of synchronization and assertion of the iosync pin remain intact. ? reading a ram profile requires that the profile select pins, pin ps1 and pin ps0, be configured to select the desired profile. when reading a register that resides in one of the profiles, the register address acts as an offset to select one of the registers among the group of registers defined by the profile, while the profile select pins select the appropriate register group. instruction byte the instruction byte contains the following information. table 10. msb d6 d5 d4 d3 d2 d1 lsb r/ w x x a4 a3 a2 a1 a0 r/ w bit 7 of the instruction byte defines whether a read or write data transfer occurs after the instruction byte write. logic high indicates read operation. logic 0 indicates a write operation. x, xbit 6 and bit 5 of the instruction byte are dont care. a4, a3, a2, a1, a0bit 4, bit 3, bit 2, bit 1, bit 0 of the instruction byte determine which register is accessed during the data transfer portion of the communications cycle. addresses for registers can be found in the first column of the register maps (see table 12 and table 13). register maps and descriptions the register maps are listed in table 12 and table 13. the active register map depends on the state of the linear sweep enable bit; certain registers are remapped depending on which mode the part is operating in. specifically, register 0x07, register 0x08, register 0x09, and register 0x0a are affected. because the linear sweep operation takes precedence over ram operations, analog devices, inc. recommends that the ram be disabled using bit cfr1<31> when linear sweep is enabled by bit cfr1<21> to conserve power. the serial address numbers associated with each of the registers are in hexadecimal format. angle brackets <> are used to reference specific bits or ranges of bits. for example, <3> designates bit 3 and <7:3> designates the range of bits from bit 7 to bit 3, inclusive. table 11. register mapping based on linear sweep enable bit linear sweep enable bit (cfr1<21>) register map cleared (= 0) ram segment control words active set (= 1) linear sweep control words active
ad9954 rev. b | page 26 of 40 table 12. register mapwhen linear swee p enable bit is false (cfr1<21> = 0) note that the ram enable bit cfr1<31> only activates the ram itself, not the ram segment control words. register name (serial address) bit range (msb) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 (lsb) bit 0 default value or profile control function register no.1 (cfr1) (0x00) <7:0> digital power- down comp power- down dac power- down clock input power- down external power- down mode linear sweep no- dwell sync_clk disable not used 0x00 <15:8> srr load enable autoclr freq accum autoclr phase accum sine/ cosine select clear freq accum clear phase accum sdio input only lsb first 0x00 <23:16> automatic sync enable software manual sync linear sweep enable not used not used not used not used not used 0x00 <31:24> ram enable ram destination internal profile control<2:0> load arr control osk enable auto osk enable 0x00 control function register no. 2 (cfr2) (0x01) <7:0> refclk multiplier vco range charge pump current<1:0> 0x00 <15:8> not used high speed sync enable hardware manual sync enable xtal out enable not used 0x00 <23:16> not used 0x18 amplitude scale factor (asf) (0x02) <7:0> amplitude scale factor register<7:0> 0x00 <15:8> auto ramp rate speed control<1:0> amplitude scale factor register<13:8> 0x00 amplitude ramp rate (arr) (0x03) <7:0> amplitude ramp rate register<7:0> 0x00 frequency tuning word (ftw0) (0x04) <7:0> frequency tuning word no. 0<7:0> 0x00 <15:8> frequency tuning word no. 0<15:8> 0x00 <23:16> frequency tuning word no. 0<23:16> 0x00 <31:24> frequency tuning word no. 0<31:24> 0x00 phase offset word (pow0) (0x05) <7:0> phase offset word no. 0<7:0> 0x00 <15:8> not used<1:0> phase offset word no. 0<13:8> 0x00 frequency tuning word (ftw1) (0x06) <7:0> frequency tuning word no. 1<7:0> 0x00 <15:8> frequency tuning word no. 1<15:8> 0x00 <23:16> frequency tuning word no. 1<23:16> 0x00 <31:24> frequency tuning word no. 1<31:24> 0x00 profile 0 ram segment control word no. 0 (rscw0) (0x07) <7:0> ram segment 0 mode control<2:0> no-dwell active ram segment 0 beginning address<9:6> ps0 = 0 ps1 = 0 <15:8> ram segment 0 beginning address<5:0> ram segment 0 final address<9:8> ps0 = 0 ps1 = 0 <23:16> ram segment 0 final address<7:0> ps0 = 0 ps1 = 0 <31:24> ram segment 0 address ramp rate<15:8> ps0 = 0 ps1 = 0 <39:32> ram segment 0 address ramp rate<7:0> ps0 = 0 ps1 = 0
ad9954 rev. b | page 27 of 40 register name (serial address) bit range (msb) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 (lsb) bit 0 default value or profile profile 1 ram segment control word no. 1 (rscw1) (0x08) <7:0> ram segment 1 mode control<2:0> no-dwell active ram segment 1 beginning address<9:6> ps0 = 1 ps1 = 0 <15:8> ram segment 1 beginning address<5:0> ram segment 1 final address<9:8> ps0 = 1 ps1 = 0 <23:16> ram segment 1 final address<7:0> ps0 = 1 ps1 = 0 <31:24> ram segment 1 address ramp rate<15:8> ps0 = 1 ps1 = 0 <39:32> ram segment 1 address ramp rate<7:0> ps0 = 1 ps1 = 0 profile 2 ram segment control word no. 2 (rscw2) (0x09) <7:0> ram segment 2 mode control<2:0> no-dwell active ram segment 2 beginning address<9:6> ps0 = 0 ps1 = 1 <15:8> ram segment 2 beginning address <5:0> ram segment 2 final address<9:8> ps0 = 0 ps1 = 1 <23:16> ram segment 2 final address<7:0> ps0 = 0 ps1 = 1 <31:24> ram segment 2 address ramp rate<15:8> ps0 = 0 ps1 = 1 <39:32> ram segment 2 address ramp rate<7:0> ps0 = 0 ps1 = 1 profile 3 ram segment control word no. 3 (rscw3) (0x0a) <7:0> ram segment 3 mode control<2:0> no-dwell active ram segment 3 beginning address<9:6> ps0 = 1 ps1 = 1 <15:8> ram segment 3 beginning address<5:0> ram segment 3 final address <9:8> ps0 = 1 ps1 = 1 <23:16> ram segment 3 final address<7:0> ps0 = 1 ps1 = 1 <31:24> ram segment 3 address ramp rate<15:8> ps0 = 1 ps1 = 1 <39:32> ram segment 3 address ramp rate<7:0> ps0 = 1 ps1 = 1 ram (0x0b) ram [1023:0]<31:0> (read instructions write out ram signature register data)
ad9954 rev. b | page 28 of 40 table 13. register mapwhen linear swee p enable bit is true (cfr1<21> = 1) note that the ram enable bit cfr1<31> only activates the ram itself, not the ram segment control words. register name (serial address) bit range (msb) bit 7 bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 (lsb) bit 0 default value or profile control function register no. 1 (cfr1) (0x00) <7:0> digital power- down comp power- down dac power- down clock input power down external power- down mode linear sweep no dwell sync_clk disable not used 0x00 <15:8> srr load enable autoclr freq accum autoclr phase accum sine/ cosine select clear freq accum clear phase accum sdio input only lsb first 0x00 <23:16> automatic sync enable software manual sync linear sweep enable not used not used not used not used not used 0x00 <31:24> ram enable ram destination internal profile control<2:0> load arr control osk enable auto osk enable 0x00 control function register no. 2 (cfr2) (0x01) <7:0> refclk multiplier vco range charge pump current<1:0> 0x00 <15:8> not used high speed sync enable hardware manual sync enable xtal out enable not used 0x00 <23:16> not used 0x18 amplitude scale factor (asf) (0x02) <7:0> (0x07) amplitude scale factor register<7:0> <15:8> auto ramp rate speed control<1:0> amplitude scale factor register<13:8> amplitude ramp rate (arr) (0x03) <7:0> amplitude ramp rate register<7:0> frequency tuning word (ftw0) (0x04) <7:0> frequency tuning word no. 0<7:0> 0x00 <15:8> frequency tuning word no. 0<15:8> 0x00 <23:16> frequency tuning word no. 0<23:16> 0x00 <31:24> frequency tuning word no. 0<31:24> 0x00 phase offset word (pow0) (0x05) <7:0> phase offset word no. 0<7:0> 0x00 <15:8> open<1:0> phase offset word no. 0<13:8> 0x00 frequency tuning word (ftw1) (0x06) <7:0> frequency tuning word no. 1<7:0> <15:8> frequency tuning word no. 1<15:8> <23:16> frequency tuning word no. 1<23:16> <31:24> frequency tuning word no. 1<31:24> negative linear sweep control word (nlscw) (0x07) <7:0> falling delta frequency tuning word<7:0> ps0 = 0 <15:8> falling delta frequency tuning word<15:8> ps0 = 0 <23:16> falling delta frequency tuning word<23:16> ps0 = 0 <31:24> falling delta frequency tuning word<31:24> ps0 = 0 <39:32> falling sweep ramp rate word<7:0> ps0 = 0 positive linear sweep control word (plscw) (0x08) <7:0> rising delta frequency tuning word<7:0> ps0 = 1 <15:8> rising delta frequency tuning word<15:8> ps0 = 1 <23:16> rising delta frequency tuning word<23:16> ps0 = 1 <31:24> rising delta frequency tuning word <31:24> ps0 = 1 <39:32> rising sweep ramp rate word<7:0> ps0 = 1
ad9954 rev. b | page 29 of 40 control register bit descriptions control function register no. 1 (cfr1) the cfr1 is used to control the various functions, features, and modes of the ad9954. the functionality of each bit follows. cfr1<31>: ram enable bit cfr1<31> = 0 (default). the ram is disabled for operation. either single-tone mode of operation or linear sweep mode of operation is enabled. cfr1<31> = 1. the ram is enabled for operation. access control for normal operation is controlled via the mode control bits of the rscw for the current profile. cfr1<30>: ram destination bit if cfr1<31> is cleared, cfr1<30> is ignored. cfr1<30> = 0 (default). if cfr1<31> is set, the ram output drives the phase accumulator (provides the ftw). cfr1<30> = 1. if cfr1<31> is set, the ram output drives the phase-offset adder (pow). cfr1<29:27>: internal profile control bits these bits cause the profile bits to be ignored when the ram is being used and puts the ad9954 into an automatic profile loop sequence that allows the user to implement a frequency/phase composite sweep that runs without external inputs. see the internal profile control section for more details. cfr1<26>: load amplitude ramp rate control bit cfr1<26> = 0 (default). the amplitude ramp rate timer is loaded only upon timeout (timer == 1); it is not loaded due to an i/o update input signal. cfr1<26> = 1. the amplitude ramp rate timer is loaded upon either timeout (timer == 1) or at the time of an i/o update input signal. cfr1<25>: shaped on-off keying enable bit cfr1<25> = 0 (default). shaped on-off keying is bypassed. cfr1<25> = 1. shaped on-off keying is enabled. see also cfr1<24>. cfr1<24>: autoshaped on-o ff keying enable bit if cfr1<25> is cleared, cfr1<24> is ignored. cfr1<24> = 0 (default). manual shaped on-off keying operation. see the shaped on-off keying section for details. cfr1<24> = 1. autoshaped on-off keying operation. see the shaped on-off keying section for details. cfr1<23>: automatic synchronization enable bit cfr1<23> = 0 (default). the automatic synchronization feature of multiple ad9954s is inactive. cfr1<23> = 1. the automatic synchronization feature of multiple ad9954s is active. see the synchronizing multiple ad9954s section for details. cfr1<22>: software manual synchronization of multiple ad9954s cfr1<22> = 0 (default). the manual synchronization feature is inactive. cfr1<22> = 1. the software-controlled manual synchronization feature is executed. the sync_clk rising edge is advanced by one sync_clk cycle, and this bit is autocleared. to advance the rising edge multiple times, this bit needs to be set once for each advance. cfr1<21>: linear frequency sweep enable cfr1<21> = 0 (default). the linear frequency sweep capability of the ad9954 is inactive. cfr1<21> = 1. the linear frequency sweep capability of the ad9954 is enabled. see the linear sweep mode section for details. cfr1<20:16>: not used, leave clear cfr1<15>: linear sweep ramp rate load control bit cfr1<15> = 0 (default). the linear sweep ramp rate timer is loaded only upon timeout (timer == 1); it is not loaded due to an i/o update input signal. cfr1<15> = 1. the linear sweep ramp rate timer is loaded either upon timeout (timer == 1) or at the time of an i/o update input signal. cfr1<14>: autoclear frequency accumulator bit cfr1<14> = 0 (default). the current state of the frequency accumulator is not impacted by receipt of an i/o update signal. cfr1<14> = 1. the frequency accumulator is automatically and synchronously cleared for one cycle upon receipt of an i/o update signal. cfr1<13>: autoclear phase accumulator bit cfr1<13> = 0 (default). the current state of the phase accumulator is not impacted by receipt of an i/o update signal. cfr1<13> = 1. the phase accumulator is automatically and synchronously cleared for one cycle upon receipt of an i/o update signal. cfr1<12>: sine/cosine select bit cfr1<12> = 0 (default). the angle-to-amplitude conversion logic employs a cosine function. cfr1<12> = 1. the angle-to-amplitude conversion logic employs a sine function. cfr1<11>: clear frequency accumulator cfr1<11> = 0 (default). the frequency accumulator functions as normal. cfr1<11> = 1. the frequency accumulator memory elements are cleared and held clear until this bit is cleared.
ad9954 rev. b | page 30 of 40 cfr1<10>: clear phase accumulator cfr1<10> = 0 (default). the phase accumulator functions as normal. cfr1<10> = 1. the phase accumulator memory elements are cleared and held clear until this bit is cleared. cfr1<9>: sdio input only cfr1<9> = 0 (default). the sdio pin is bidirectional (2-wire serial programming mode). cfr1<9> = 1. the sdio is configured as an input-only pin (3-wire serial programming mode). cfr1<8>: lsb first cfr1<8> = 0 (default). msb first format is active. cfr1<8> = 1. lsb first format is active. cfr1<7>: digital power-down bit cfr1<7> = 0 (default). all digital functions and clocks are active. cfr1<7> = 1. all non-i/o digital functionality is suspended, lowering the power significantly. cfr1<6>: comparator power-down bit cfr1<6> = 0 (default). the comparator is enabled for operation. cfr1<6> = 1. the comparator is disabled and is in its lowest power dissipation state. cfr1<5>: dac power-down bit cfr1<5> = 0 (default). the dac is enabled for operation. cfr1<5> = 1. the dac is disabled and is in its lowest power dissipation state. cfr1<4>: clock input power-down bit cfr1<4> = 0 (default). the clock input circuitry is enabled for operation. cfr1<4> = 1. the clock input circuitry is disabled and the device is in its lowest power dissipation state. cfr1<3>: external power-down mode cfr1<3> = 0 (default). the external power-down mode selected is the rapid recovery power-down mode. in this mode, when the pwrdwnctl input pin is high, the digital logic and the dac digital logic are powered down. the dac bias circuitry, pll, oscillator, and clock input circuitry are not powered down. cfr1<6> determines whether the comparator is powered down. cfr1<7>, and cfr1<5:4> are ignored. cfr1<3> = 1. the external power-down mode selected is the full power-down mode. in this mode, when the pwrdwnctl input pin is high, all functions are powered down. this includes the dac and pll, which take a significant amount of time to power up. cfr1<7:4> are all ignored. cfr1<2>: linear sweep no-dwell bit if cfr1<21> is clear, this bit is a dont care (ignored). cfr1<2> = 0 (default). the linear sweep no-dwell function is inactive. if the no-dwell mode is inactive when the sweep completes, sweeping does not restart until an i/o update or change in profile initiates another sweep as previously described. the output frequency holds at the final value in the sweep. cfr1<2> = 1. the linear sweep no-dwell function is active. if the no-dwell mode is active when the sweep completes, the phase accumulator is cleared. the phase accumulator remains cleared until another sweep is initiated via an i/o update input or change in profile. cfr1<1>: sync_clk disable bit cfr1<1> = 0 (default). the sync_clk pin is active. cfr1<1> = 1. the sync_clk pin assumes a static logic 0 state to minimize noise generated by the digital circuitry. the synchronization circuitry remains active internally to maintain normal device timing. cfr1<0>: not used, leave clear control function register no. 2 (cfr2) the cfr2 is used to control the various functions, features, and modes of the ad9954, primarily related to the analog sections of the chip. cfr2<23:12>: not used, leave clear cfr2<11>: high speed sync enable bit cfr2<11> = 0 (default). the high speed sync enhancement is off. cfr2<11> = 1. the high speed sync enhancement is on. this bit should be set when using the autosynchronization feature for sync_clk > 50 mhz (sysclk > 200 msps). cfr2<10>: hardware manual sync enable bit cfr2<10> = 0 (default). the hardware manual sync function is off. cfr2<10> = 1. the hardware manual sync function is enabled. while this bit is set, a rising edge on the sync_in pin causes the device to advance the sync_clk rising edge by one refclk cycle. this bit does not self-clear. cfr2<9>: crystal out enable bit cfr2<9> = 0 (default). the crystal out pin is inactive. cfr2<9> = 1. the crystal out pin is active. the crystal oscillator circuitry output drives the crystal out pin, which can be used as a reference frequency for additional devices. cfr2<8>: not used, leave clear cfr2<7:3>: reference clock multiplier control bits this 5-bit word controls the multiplier value out of the clock- multiplier (pll) block. see the clock multiplier section for more details.
ad9954 rev. b | page 31 of 40 cfr2<2>: vco range control bit cfr2<2> = 0 (default), vco operates between 100 mhz and 250 mhz. cfr2<2> = 1, vco operates between 250 mhz and 400 mhz. cfr2<1:0>: charge pump current control bits these bits are used to control the current setting on the charge pump. the default setting, cfr2<1:0>, sets the charge pump current to the default value of 75 a. for each bit added, 25 a of current is added to the charge pump current: 01 = 100 a, 10 = 125 a, and 11 = 150 a. other register descriptions amplitude scale factor (asf) the asf register stores the 2-bit auto ramp rate speed value and the 14-bit amplitude scale factor used in the output shaped keying (osk) operation. in auto-osk operation, asf<15:14> tells the osk block how many amplitude steps to take for each increment or decrement. asf<13:0> sets the maximum value achievable by the osk internal multiplier. in manual osk mode, asf<15:14> has no effect. asf<13:0> provide the output scale factor directly. if the osk is disabled using cfr1<25>, this register has no effect on device operation. amplitude ramp rate (arr) the arr register stores the 8-bit amplitude ramp rate used in the auto-osk mode. see the amplitude control options section for details. frequency tuning word 0 (ftw0) the frequency tuning word is a 32-bit register that controls the rate of accumulation in the phase accumulator of the dds core. its specific role is dependent on the device mode of operation. phase offset word (pow) the phase offset word is a 14-bit register that stores a phase offset value. see the phase offset word mux section for additional details. frequency tuning word 1 (ftw1) the frequency tuning word is a 32-bit register that sets the upper frequency in a linear sweep operation. register 0x07 and register 0x08 are multifunctional registers. negative and positive line ar sweep control word (nlscw and plscw) when linear sweep bit is enabled, register 0x07 provides the negative linear sweep control word (nlscw) and register 0x08 provides the positive linear sweep control word (plscw). each of the linear sweep control words contains a 32-bit delta frequency tuning word (fdftw and rdftw) and an 8-bit sweep ramp rate word (fsrrw and rsrrw). see the modes of operation section for more details. ram segment control words (rscw0, rscw1, rscw2, and rscw3) when linear sweep is disabled, register 0x07, register 0x08, register 0x09, and register 0x0a act as the ram segment control words for each of the ram segments. each of the ram segment control words is comprised of a ram segment address ramp rate, a final address value, a beginning address value, a ram segment mode control, and a no-dwell bit. note the discontinuities of the address registers, since they may make programming a little more challenging. ram segment address ramp rate, rscw<39:24> for ram modes that step through address values, such as ramping, this 16-bit word defines the number of sync_clk cycles the ram controller dwells at each address. a value of 0 is invalid. any other value from 1 to 65,535 can be used. ram segment final address rscw<9:8>, rscw<23:16> this discontinuous 10-bit sequence defines the final address value for the given ram segment. the order in which the bits are previously listed is msb first: rscw<9> is the msb and rscw<16> is the lsb of the final address value. ram segment beginning address rscw<3:0>, rscw <15:10> this discontinuous 10-bit sequence defines the final address value for the given ram segment. the order in which the bits are previously listed is msb first: rscw<3> is the msb and rscw<10> is the lsb of the final address value. ram segment no-dwell bit rscw<4> this bit sets the no-dwell feature of sweeping profiles. in profiles that sweep from a defined beginning to a defined end, the ram controller can either dwell at the final address until the next profile is selected or, when this bit is set, the ram controller returns to the beginning address and dwells there until the next profile is selected. ram segment mode control rscw<7:5> this 3-bit sequence determines the ram segments mode of operation. there are only five possible ram modes, so only values of 0 to 4 are valid (see table 7).
ad9954 rev. b | page 32 of 40 layout considerations for the best performance, the following layout guidelines should be observed. always separate the analog power supply (avdd) and the digital power supply (dvdd), even if just from two different voltage regulators driven by a common supply. likewise, the ground connections (agnd and dgnd) should be kept separate as far back to the source as possible (for example, separate the ground planes on a localized board, even if the grounds connect to a common point in the system). bypass capacitors should be placed as close to device pins as possible. usually a multitiered bypassing scheme consisting of a small high frequency capacitor (100 pf) placed close to the supply pin and progressively larger capacitors (0.1 f and 10 f) further back to the actual supply source works best.
ad9954 rev. b | page 33 of 40 detailed programming examples single-tone mode in this example, the part is programmed to output a 122 mhz single-tone carrier, the device is clocked with a 20 mhz crystal oscillator, and the clock multiplier is used to push the internal system clock up to 400 mhz. phase offsets are then added to the carrier. the programming steps include the following: 1. write to control register 1 instructing the part to autoclear the phase accumulator whenever the phase offset word changes and issues an i/o update. set bit 13 in the cfr1 register. the address for cfr1 is 0; therefore, an instruction byte of 0x00 is sent and 0x00 00 00 20 for data. note that users must write to all four bytes of the register. 2. write to control register 2 setting the clock multiplier value to 20, and the vco range bit to its upper value. in cfr2, bit 7 to bit 3 control the multiply value. to get a multiplied value of 20 from 5 bits, the binary value is 10100. as previously mentioned, also send bit 2 to put the vco into its upper range (to get 400 mhz). therefore, the instruction byte is 0x01 and 0x00 00 a4 for data. 3. calculate the tuning word to generate a 122 mhz output from a 400 msps clock, load it into ftw0, and latch the data written to the i/o buffers into their respective registers. the frequency tuning word equation becomes (122 mhz/ 400 mhz) 2 32 , which yields 0x4e 14 7a e1. send the instruction byte 0x04 and four data bytes of 0x4e 14 7a e1. issue an i/o update, which transfers the data into the part. whenever a phase change is desired, calculate and write the phase offset word to the part and issue an i/o update. for example, if the first value is 45, the phase offset word is (45/360) 2 14 , or in decimal, 2048. therefore, write an instruction byte of 0x05 and data byte 0x0800. when an i/o update is issued, the phase accumulator clears, which starts it from a known phase of 0. it again accumulates at a 122 mhz rate, except now phase shifting each and every sample by 45. linear sweep mode in this example, the part is programmed to generate a chirp from 61.53 mhz to 62.73 mhz. the chirp up is in 1.20 s, the chirp down is in 1.8 s, and the chirp is made as finely linearized as possible. therefore, users must calculate and program: ? ftw0 for 61.53 mhz (the start frequency) ? ftw1 for 62.73 mhz (the stop frequency) ? cfr1 to put the part into linear sweep mode ? the positive linear sweep control word (plscw), to make as linearized a chirp in 1.20 s ? the negative linear sweep control word (nlscw), to make as linearized a chirp in 1.80 s the last example programmed the clock multiplier; therefore, start with a 400 msps clock. ftw0 is (61.53/400) 2 32 or 0x27611340, and ftw1 is (62.73/400) 2 32 or 0x2825aee6. to turn the linear sweep on, set cfr1<21>. the plscw and nlscw are five bytes wide: one byte for the ramp rate and four bytes for the incremental frequency value. to begin, calculate the ramp rate, and cover 1.2 mhz on both sweeps. the ramp rate tells the part how many sync_clk cycles (for sysclk cycles) to send at each incremental value. when the shortest time possible is spent at each incremental frequency, the most linearized sweep is achieved; therefore, the part should only spend one sync_clk period at each incremental frequency, which ensures that the smallest frequency steps possible are taken. for a 400 msps sysclk, the result is a 100 mhz sync_clk rate or a 10 ns sync_clk period. this means on the finest resolution, 120 incremental steps squeeze into the rising sweep (1.2 s/10 ns) and 180 on the falling sweep (1.8 s/10 ns). for the rising delta frequency, a 1.2 mhz/120 steps is calculated, which means each step is approximately 10 khz for the rising delta frequency and approximately 666.6666 hz for the falling delta frequency. the logic in the linear sweep block ensures that ftw1 on a rising sweep or ftw0 on a falling sweep is not exceeded. if the exact incremental tuning word is not achieved using the 32-bit resolution, round up, not down, to ensure the entire range during the sweep is covered. to calculate the rising delta frequency word, simply calculate (10 k/400 m) 2 32 = 0x0001a36f. combining the rising ramp rate, first byte, and the rising delta frequency, the second byte to fifth byte yields the plscw: 0x010001a36f. likewise, the nlscw works out to 0x0100001bf4. table 14 is a summary table of instruction and data bytes to write to. table 14. linear sweep example write instructions register instruction byte data byte cfr1 0x00 0x00200000 ftw0 0x04 0x27611340 ftw1 0x06 0x2825aee6 nlscw 0x07 0x0100001bf4 rlscw 0x08 0x010001a36f ram mode this example programs the ram. use the ram on the ad9954 to simulate the nonlinear filter shape of a gaussian filter response on the fsk data. begin by plotting the filter response from f0 to f1 and from f1 to f0. the transition time specification (see table 1) tells how long it takes to transition from f0 to f1 and from f1 to f0, either as an actual time value or as a fraction of the symbol rate. both ways show how long it can take to change symbols, and for this application, it is 100 ns. to program the ram, decide how many ram segments to use, program the ram segment control word for each of those segments, and load the ram data for each of those segments.
ad9954 rev. b | page 34 of 40 because there is a ramp-up, but no ramp-down, ram mode, two ram segments are generated; one for the transition from f0 to f1, and one for the transition from f1 to f0. step through the intermediary frequencies as quickly as possible, because the faster the steps, the less the output frequency deviates from the ideal frequency response of the filter. the fastest the ad9954 can step through the values in the ram is at the sync_clk rate, or ? of the sysclk rate, which works out to 10 ns, assuming the maximum sysclk rate of 400 msps. dividing the total transition time of 100 ns by the time for each transition, 100 steps can be taken. the intermediary frequencies are solved by looking at the instantaneous frequency on the curve every 10 ns and by recording that value. this gives 200 frequency values, 100 representing the change from f0 to f1 and 100 representing the change from f1 to f0. this is the information needed to program the ram. begin by programming cfr1 to set the ram enable bit. calculate and program rscw0 and rscw1. each of the ram segment control words has an address ramp rate (16 bits), a final address (10 bits), a beginning address (10 bits), a mode control value (3 bits), and a no-dwell flag. stepping through the intermediary frequencies as quickly as possible was previously discussed; therefore, the ramp rate for each word is 0x0000. define ram segment 0 to occupy the ram space from address 0 to address 99, which gives 100 values. define ram segment 1 to occupy address 100 to address 199 (also 100 values). look at the modes of operation choice and recognize that the ramp-up mode is used to step through each of the addresses and then holds the final value in the profile. therefore, for each rscw, the mode control bits are b001. because staying at the last value is recommended, the no-dwell bit is 0. to form the data for each rscw, combine these values. for rscw0, it is 0x0100630020. for rscw1, it is 0x0100c79021. because the words that comprise the rscw are not contiguous, care must be taken in calculating the rscw. make a chart of each of the subwords in order: address ramp rate, final address, beginning address, mode, and no dwell. write the binary values for each subword, and then, with a copy of the register map printed out, write each of the binary bits into the map. when this is completed, the individual bytes can be read from the map. for example, table 15 shows how rscw1 would appear. table 15. ram mode register table settings ram segment control word no. 1 (rscw1) (0x08) <7:0> ram segment 1 mode control <2:0> 001 no- dwell active 0 ram segment 1 beginning address <9:6> 0001 <15:8> ram segment 1 beginning address <5:0> 100100 ram segment 1 final address <9:8> 00 <23:16> ram segment 1 final address <7:0> 11000111 <31:24> ram segment 1 address ramp rate <15:8> 00000000 <39:32> ram segment 1 address ramp rate <7:0> 00010000 the rscw0 and rscw1 values must be loaded into their registers before attempting to write data to rscw0 and rscw1; therefore, issue an i/o update. the next step is to convert each of the intermediary frequencies into a frequency tuning word according to 32 2 ? ? where: fi is the desired intermediary frequency. sysclk is the system clock rate. once this is complete, the result for each profile should be a vector of 100 32-bit words. to write ram segment 0, select profile 0 (ps0 = 0, ps1 = 0), and then write the instruction byte b00001011, which indicates a ram write operation is going to be performed. the serial port i/o controller recognizes this and polls the profile select pins, thus determining that profile 0 is the target storage location for the data out of rscw0 previously entered. it now knows to put the first word at address 0, the last word at address 99, and that there are 100 words in total. proceed to load all 100 32-bit frequency words into the ram. when this is done, write the data to ram segment 1. first, change to profile 1 (ps0 = 1, ps1 = 0), and then write the ram instruction byte again. the device now knows to write the first word at address 100, the last word at address 199, and again that there are 100 words in total. write all 100 32-bit words of ram segment 1 and issue an i/o update. whenever the ps0 pin is toggled (from 0 to 1), the part steps through the ram segment, which is the gaussian-shaped pattern programmed into the ram.
ad9954 rev. b | page 35 of 40 suggested application circuits 03374-012 lpf ad9954 refclk rf/if input modulated/ demodulated signal figure 31. synchronized lo for upconversion/downconversion 03374-013 filter phase comparator loop filter ad9954 tuning word ref signal vco figure 32. digitally programmable divide-by-n function in pll 03374-014 tuning word cmos level clock ad9954 dds ad9954 on-chip comparator iout iout lpf lpf figure 33. frequency agile clock generator 03374-015 crystal frequency tuning word phase offset word 2 i/i-bar baseband frequency tuning word phase offset word 1 q/q-bar baseband sync_in ad9954 dds refclk refclk refclk lpf sync_out crystal out ad9954 dds iout iout lpf iout iout rf out figure 34. two ad9954s synchronized to provide i and q carriers with independent phase offsets for nulling
ad9954 rev. b | page 36 of 40 evaluation board schematics c1 0.1f c2 0.1f c3 0.1f c8 0.1f c11 0.1f c4 0.1f c5 0.1f c36 39pf c35 39pf c6 0.1f c7 0.1f gnd avdd c10 0.1f c12 0.1f gnd dvdd c9 0.1f c46 7.5pf c43 33pf c33 see note 2 c38 33pf c41 22pf r14 50 ? c42 39pf c45 22pf c44 39pf c39 7.5pf c37 22pf c40 39pf l6 20nh l4 18nh l5 12nh l8 20nh l7 18nh l9 12nh gnd dvdd_i/o reset_dut1 pwrdwnctrl_dut1 dvdd gnd gnd 36 35 34 33 32 31 30 29 28 27 26 25 1 2 3 4 3 1 5 4 5 6 7 8 9 10 11 12 4 avdd 5 6 3 2 1 avdd avdd avdd gnd ad9954 u7 dut 1 j5 comp_out_dut1 fud_dut1 dvdd gnd avdd gnd gnd avdd xtal_dut2 clkmodesel_dut1 j2 w1 4 12 3 48 47 46 45 44 43 42 41 40 39 38 37 ps1_dut1 ps0_dut1 osk_dut1 syncmulti_dut2 syncmulti_dut1 dvdd_i/o gnd sdio sclk csb_dut1 i/o_sync_dut1 sdo 13 14 15 16 17 18 19 20 21 22 23 24 avdd avdd avdd gnd gnd avdd gnd gnd avdd avdd gnd note 2 note 1 note 4 note 3 gnd avdd filter_in_dut1 j1 filter_out_dut1 j3 ref_clk_dut1 balun t1 j4 crystal out dut2 gnd gnd xtal_dut2 1 25mhz notes 1. the full-scale dac output current is controlled by means of an external resistance (r set ) connected between the dac_r set pin and ground. resistor values for full-scale currents are: 3.92k ? = 10ma, 5.23k ? = 7.5ma, 7.87k ? = 5.0ma, 15.8k ? = 2.5ma. 2. c33 is used for a simulated capacitance load for the comparator out. the capacitance value should not exceed 10pf. 3. capacitors c48 and c49 should be soldered in place when the ref_clk_dut1 input is used. capacitors c35 and c36 should be soldered in place when crystal 1 is used in conjunction with the internal oscillator. 4. use either resistors r4 and r5 (comparator inputs) or r6 and r7 (filtered output) for the iout and iout. do not use both sets at the same time. reset pwrdwnctl dvdd dgnd agnd comp_in comp_in avdd comp_out avdd avdd agnd i/o update dvdd dgnd avdd agnd agnd avdd osc/refclk osc/refclk crystal out clkmodeselect loop_filter ps1 ps0 osk sync_clk sync_in dvdd_i/o dgnd sdio sclk cs iosync sdo avdd agnd agnd avdd agnd avdd avdd iout iout agnd dac_r set dacbp c47 1f r10 3.92k ? r5 0 ? r4 0 ? r8 25 ? r3 243 ? r6 0 ? r1 50 ? r9 25 ? r7 0 ? c30 13pf c50 13pf l1 39nh c31 27pf c52 6.8pf l2 56nh c29 33pf c32 22pf c51 2.2pf l3 68nh c34 0.01f c49 0.1f c48 0.1f 03374-033 figure 35. evaluation board channel 1
ad9954 rev. b | page 37 of 40 c21 0.1f c20 0.1f c19 0.1f c18 0.1f c23 0.1f c16 0.1f c15 0.1f c14 0.1f c13 0.1f gnd avdd c24 0.1f c22 0.1f gnd dvdd c17 0.1f gnd dvdd_i/o reset_dut2 pwrdwnctrl_dut2 dvdd gnd gnd 36 35 34 33 32 31 30 29 28 27 26 25 1 2 3 4 3 1 5 4 5 6 7 8 9 10 11 12 4 avdd 5 6 3 2 1 avdd avdd avdd gnd reset pwrdwnctl dvdd dgnd agnd ad9954 u8 dut 2 comp_in comp_in avdd comp_out_dut2 j9 comp_out avdd avdd agnd fud_dut2 dvdd gnd avdd gnd gnd avdd xtal_out clkmodesel_dut2 i/o update dvdd dgnd avdd agnd agnd avdd osc/refclk osc/refclk crystal out clkmodeselect loop_filter j14 w3 4 12 3 48 47 46 45 44 43 42 41 40 39 38 37 ps1 ps0 osk sync_clk sync_in dvdd_i/o dgnd sdio sclk cs iosync sdo ps1_dut2 ps0_dut2 osk_dut2 syncmulti_dut1 syncmulti_dut 2 dvdd_i/o gnd sdio sclk csb_dut2 i/o_sync_dut2 sdo 13 14 15 16 17 18 19 20 21 22 23 24 avdd agnd agnd avdd agnd avdd avdd avdd avdd avdd gnd gnd avdd gnd gnd avdd avdd iout iout agnd dac_r set dacbp gnd note 2 note 1 note 3 avdd gnd comp_in j10 gnd avdd filter_in_dut2 comp_in j11 avdd gnd j12 filter_iout_dut2 j6 ref_clk_dut2 balun t4 j7 crystal out dut2 gnd avdd xtal_out xtal_dut2 notes 1. the full-scale dac output current is controlled by means of an external resistance (r set ) connected between the dac_r set pin and ground. resistor values for full-scale currents are: 3.92k ? = 10ma, 5.23k ? = 7.5ma, 7.87k ? = 5.0ma, 15.8k ? = 2.5ma. 2. c58 is used for a simulated capacitance load for the comparator out. the capacitance value should not exceed 10pf. 3. for crystal out clock operation remove t4, terminate the osc/refclk to either avdd (r30) or gnd (r31) and solder r21 in place. do not use r30 or r31 simultaneously. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 50 49 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 32 31 30 29 28 27 26 p1 p2 p3 p4 p5 p6 p7 p8 p9 p10 p11 p12 p13 p14 p15 p16 p17 p18 p19 p20 p21 p22 p23 p24 p25 p50 p49 p48 p47 p46 p45 p44 p43 p42 p41 p40 p39 p38 p37 p36 p35 p34 p33 p32 p31 p30 p29 p28 p27 p26 reset_dut1 clkmodesel_dut1 pwrdwnctrl_dut1 i/o_sync_dut1 fud_dut1 osk_dut1 ps1_dut1 ps0_dut1 cs_dut2 reset_dut2 clkmodesel_dut2 pwrdwnctrl_dut2 i/o_sync_dut2 fud_dut2 osk_dut2 ps1_dut2 ps0_dut2 rb_enable sdio sdo sclk gnd u13 cs_dut1 c65 0.1f c66 0.1f c58 see note 2 r24 10k ? r11 3.3k ? r25 10k ? r2 3.3k ? c62 1f c61 0.01f c64 0.1f c63 0.1f r15 3.92k ? r9 25 ? r22 25 ? r16 243 ? r21 0 ? r30 0 ? r31 0 ? r18 50 ? c59 13pf c53 13pf l10 39nh c57 27pf c60 6.8pf l12 56nh c56 33pf c55 22pf c54 2.2pf l11 68nh 03374-034 figure 36. evaluation board channel 2
ad9954 rev. b | page 38 of 40 5 4 3 2 1 vcc gnd dvdd dvdd_i/o avdd 6 5 4 3 2 7 8 9 11 1 15 16 17 18 19 1d 74lvc574a 74lvc574a 74lvc574a 74lvc14a 74lvc14a u12 u12 8d 6 5 4 3 2 7 8 9 1d 8d 1d 8d c1 en w2 u9 11 1 c1 en u10 11 1 c1 en u11 14 13 12 15 16 17 18 19 14 13 12 15 16 17 18 19 14 13 12 5 6 7 8 9 4 3 2 1 28 29 30 31 32 27 33 34 35 36 26 25 20 21 22 23 24 10 11 12 13 16 17 18 14 15 19 a3 a4 a5 a6 a7 a2 a1 a0 c0 28 29 30 c2 b3 27 33 34 35 c3 26 25 20 21 22 23 24 b6 b7 b5 b4 16 17 18 c1 15 19 6 5 4 3 2 65 4321 7 8 9 ps1_dut2 osk_dut1 osk_dut2 fud_dut1 fud_dut2 ps0_dut2 ps1_dut1 ps0_dut1 pwrdwnctrl_dut2 clkmodesel_dut1 clkmodesel_dut2 reset_dut1 reset_dut2 pwrdwnctrl_dut1 i/o_sync_dut2 i/o_sync_dut1 csb_dut2 ref_clk csb_dut1 sclk sdi vcc : 20 gnd : 10 vcc gnd vcc : 20 gnd : 10 vcc : 20 gnd : 10 tb5 u3 c68 0.1f c69 0.1f c70 0.1f c71 0.1f c72 0.1f gnd vcc c26 10f gnd dvdd_i/o c28 10f sclk1 gnd vcc c25 10f gnd avdd c27 10f gnd dvdd j15 r32 0 ? r36 10k ? r37 10k ? digital logic ref clk 74lvc14a u12 8 vcc gnd clock f clock a clock d vcc sclk1 vcc 9 74lvc14a u12 10 11 74lvc14a c36crpx u12 u4 3 1 2 sdi sdio sdo rb_enable 74lvc125a u6 9 10 8 74lvc125a u6 5 4 6 74lvc125a u6 r35 10k ? vcc r34 10k ? 03374-035 figure 37. evaluation board interface logic
ad9954 rev. b | page 39 of 40 outline dimensions for proper connection of the exposed pad, refer to the pin configuration and function descriptions section of this data sheet. compliant to jedec standards ms-026-abc 0.50 bsc lead pitch 0.27 0.22 0.17 9.00 bsc sq 7.00 bsc sq 37 37 48 48 1 13 12 1 12 24 13 24 25 36 25 36 1.05 1.00 0.95 0.20 0.09 0.08 max coplanarity view a rotated 90 ccw seating plane 0 min 7 3.5 0 0.15 0.05 0.75 0.60 0.45 1.20 max view a top view (pins down) bottom view (pins up) pin 1 3.50 sq exposed pad 011708-a figure 38. 48-lead thin quad flat package, exposed pad [tqfp_ep] (sv-48-4) dimensions shown in millimeters ordering guide model temperature range package description ordering quantity package option ad9954ysv ?40c to +105c 48-lead thin quad fl at package, exposed pad [tqfp_ep] sv-48-4 ad9954ysv-reel7 ?40c to +105c 48-lead thin quad flat package, exposed pad [tqfp_ep] 500 sv-48-4 ad9954ysvz 1 ?40c to +105c 48-lead thin quad flat package, exposed pad [tqfp_ep] sv-48-4 ad9954ysvz-reel7 1 ?40c to +105c 48-lead thin quad flat package, exposed pad [tqfp_ep] 500 sv-48-4 ad9954/pcbz 1 evaluation board 1 z = rohs compliant part.
ad9954 rev. b | page 40 of 40 notes ?2003C2009 analog devices, inc. all rights reserved. trademarks and registered trademarks are the prop erty of their respective owners. d03374-0-5/09(b)


▲Up To Search▲   

 
Price & Availability of AD9954PCBZ1

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X